In welcher Codierung liegt wchar_t vor?
-
Hallo,
ich versuche grade eine Klasse zu schreiben die einen wstring entgegennimmt, diesen als UTF-8 kodiert und dannach in eine Datei schreibt.Jetzt weiß ich aber leider nicht, in welcher Kodierung die einzelnen wchar_t sind die ich mit
wstring abc; //... wchar_t *buf=abc.c_str(); //wie liegt z.b. buf[0] vor?erhalte.
Grüße Fencer
-
wchar_t ist ein datentyp und sagt nichts über die kodierung aus. die kodierung wird von demjenigen festgelegt, der den string füllt.
-
okay dann nehmen wir mal folgendes an:
abc=L"alle kühe muhen";
-
ob es nun ein wchar_t oder viele sind, das ändert nichts. ist implementation defined, kommt also auf die plattform und den compiler an.
unter windows mit visual c++ ist dein beispielstring in UTF-16 codiert. unter linux mit gcc ist es UTF-32.
-
windows mit visual c++ ist dein beispielstring in UTF-16 codiert. unter linux mit gcc ist es UTF-32.
dass wollte ich wissen, danke.
ps:sorry für die formulierung
