Letztes Zeichen von char abschneiden
-
Moin!
Ich möchte von einem char das letzte Zeichen löschen.
Wie mache ich das am besten?
-
Indem du es auf die binäre Null setzt:
char zeichen[10] = "Hallo!"; size_t len = strlen(zeichen); if(len>0) zeichen[len-1] = 0; // bzw. '\0'
-
raterchen schrieb:
Ich möchte von einem char das letzte Zeichen löschen.
Was ist das letzte Zeichen von einem char? :p
-
Formal gesehen ist das letzte zeichen eines char der char selbst, analog das erste zeichen.
-
Worüber sich meine Vorschreiber so lustig machen ist die Tatsache, dass du einen String = eine Zeichenkette = einen char Array mit Terminierungszeichen meinst.
Die 0 oder '\0' in einem char Array markiert das Ende eines Strings, somit kannst du es zur Stringkürzung 'missbrauchen'.// Include 'cout' #include <iostream> // Include 'strlen' #include <cstring> // Program entry function int main(){ // Define string char my_c_string[] = "Hello world!"; // Get string length size_t len = strlen(my_c_string); // Check for valid string length if(len > 0) // Set termination character/string end to last character my_c_string[len-1] = '\0'; // Output string std::cout << my_c_string; // Return program termination status return 0; }
Hello world
-
char x = 'a'; x -= x;
-
Falls das wirklich C++ sein soll statt C:
string foo = "Hallo Welt"; foo.pop_back();