Benutzer-Werkzeuge

Webseiten-Werkzeuge


edv:prg:cpp:datatyp:datentype_fuer_zeichen_und_strings

Datentype für Zeichen und Strings

char, wchar_t, char16_t, char32_t, u16string, u32string

char entspricht i.d.R. 256 Ausprägungen und belegt normalerweise 1 Byte bzw. 8 Bit. Wobei 1 Byte nicht auf allen Plattformen 8 Bit entspricht.
Wie viele Bits ein char auf dem jeweiligen System tatsächlich hat, lässt sich mit std::numeric_limits<unsigned char>::digits ermitteln.
Ein sizeof(char) muss immer eine 1 ergeben.

wchar_t - für "breite" Zeichen. Bei der Deklration wird das Präfix L verwendet, wie z.B. L'A' für ein "breites" A. Für die Ausgabe wird statt den Ausgabe-Stream cout der Stream wcout verwendet. Der Type wchar_t ist aber compilerspezifisch und entspricht mal 16 und mal 32 Bit.

:!: Der C++11-Standard implementiert Unicode-Typen char16_t und char32_t mit fester Breite von 16 bzw. 32 Bit.

Präfixe für die Stringliterale:

Kodierung Datentyp Stringliteral
UTF-8 char u8"Unicode-String"
UTF-16 char16_t u"Unicode-String"
UTF-32 char32_t U"Unicode-String"

:!: Wichtig: Ein Unicode-Zeichen belegt nicht unbedingt ein einziges char/char16_t/char32_t!

FIXME

u16string

u32string


Stand: 06.10.2014
: Jürgen Kreick

EOF

edv/prg/cpp/datatyp/datentype_fuer_zeichen_und_strings.txt · Zuletzt geändert: 2020/01/11 01:23 von 127.0.0.1

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki