Forum: Programmieren allgemein
C++
by Zacherl,
2. Jun 2017
Willst du überhaupt den Backslash? Weil #34 ist ". Dementsrpechend müsste es dann natürlich L"\"" heißen.
Forum: Programmieren allgemein
C++
by Zacherl,
2. Jun 2017
Wichtig ist, dass du das Backslash doppelt schreibst, sonst gillt es unter C/C++ als Escape Zeichen.
Forum: Programmieren allgemein
C++
by Zacherl,
2. Jun 2017
Ahh okay, in diesem Falle kannst du die Funktion auch einfach so aufrufen:
S1 = INWSTR(0, sCfg, L"\\");
Da bist du in die Falle getappt, weil WCHAR* nicht ein einzelnes Zeichen, sondern einen kompletten String (in C Sprachen immer ein Zeiger (*) auf das erste Zeichen) darstellt. Dadurch, dass die C-Strings auch keine vorgestellte Länge (wie in Delphi) besitzen, müssen sie zwangsweise...
Forum: Programmieren allgemein
C++
by Zacherl,
2. Jun 2017
Es muss wie folgt aussehen:
WCHAR Quote = { 34, 0 };
Sonst fehlt die Nullterminierung und der String wird so lange, bis zufällig irgendwo im Speicher dahinter mal eine Null steht.
Alternativ kannst du String-Konstanten in C++ auch wie folgt definieren:
wchar* quote = L"MY STRING";
Hier würde die abschließende Null automatisch hinzugefügt. Das "L" kennzeichnet den String als...