strcat mit mehreren Nullchars
-
Hallo,
für eine (WinAPI) Funktion benötige ich einen String der sich aus 2 Strings mit abschließendem Nullchar aufbaut (d.h.: Text, Nullchar, Text, Nullchar, Nullchar). Die beiden Teilstrings sollten nacheinander gestellt werden, wie hier im String "neu" dargestellt:teil1 = "Teil1"; teil2 = "Teil2"; neu = "Teil1\0Teil2\0";Wie kann ich nun den String "neu" aus den beiden Teilstrings erstellen?
Mit strcat() geht es ja nicht, da strcat annimnt, ein String sei zu Ende bei \0..MfG,
Max
-
du könntest
std::strings verwenden und dann per c_str einenconst char*an deine funktion übergeben:std::string foo("Test"); foo += '\0'; foo += "Test"; foo += '\0'; //oder: const char* bar = "Test\0Test"; string baz(bar, bar+10); //verwende: cout << baz << endl; cout << baz.c_str() << endl;
-
memcpy
-
strcpy
-
Hallo,
ich habe jetzt memcpy verwendet.
Man nimmt am besten eine size_t variable, in der man mitzählt, wie lang der string ist (weil ja strlen nicht mehr funktioniert..), und kopiert dann an die stelle "&stringname[szPosition]" die neuen Daten hin.Danke für alle Antworten!