Video: C++ Tutorial for Beginners - Full Course 2025
Standardkaraktervariablen i C ++ er en smule 1 byte bred og kan kun håndtere 255 forskellige tegn. Dette er nok nok til europæiske sprog, men ikke stort nok til at håndtere symbolbaserede sprog som kanji.
Der er opstået flere standarder for at udvide tegnsættet til at håndtere disse sprogs krav. UTF-8 bruger en blanding af 8-, 16- og 32-bit tegn til at implementere næsten hver kanji eller hieroglyph, du kan tænke på, men stadig forbliver kompatibel med simple 8-bit ASCII. UTF-16 bruger en blanding af 16- og 32-bit tegn for at opnå et udvidet tegnsæt, og UTF-32 bruger 32 bit for alle tegn.
UTF står for Unicode Transformation Format, hvorfra det får det fælles kaldenavn Unicode.
Tabellen beskriver de forskellige tegntyper, der understøttes af C ++. Først forsøgte C ++ at komme forbi med en vagt defineret bred tegntype wchar_t. Denne type var beregnet til at være den brede karaktertype, der var hjemmehørende i applikationsprogrammets miljø. C ++ '11 indførte specifikke typer til UTF-16 og UTF-32.
Variabel | Eksempel | Hvad er det | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
char | 'c' | ASCII eller UTF-8 tegn | wchar_t | L'c ' | Karakter i bredt format | char_16t | u'c' | UTF-16 karakter | char_32t | U'c ' | UTF-32 karakter |
UTF-16 er standardkodningen til Windows-programmer. Wchar_t typen henviser til UTF-16 i Code:: Blocks / gcc compiler.
Enhver af tegntyperne i tabellen kan også kombineres til strenge:
wchar_t * wideString = L "dette er en bred streng";