Video: C++ Tutorial for Beginners - Full Course 2024
Standard-charvariabeln i C ++ är en liten 1 byte bred och kan hantera endast 255 olika tecken. Detta är tillräckligt för europeiska språk, men inte tillräckligt stort för att hantera symbolbaserade språk som kanji.
Flera standarder har uppstått för att utöka karaktärsuppsättningen för att hantera kraven på dessa språk. UTF-8 använder en blandning av 8-, 16- och 32-bitars tecken för att implementera nästan alla kanji eller hieroglyfer du kan tänka på men förbli fortfarande kompatibla med enkla 8-bitars ASCII. UTF-16 använder en blandning av 16- och 32-bitars tecken för att uppnå en utökad teckenuppsättning och UTF-32 använder 32 bitar för alla tecken.
UTF står för Unicode Transformation Format, från vilket det blir det gemensamma smeknamnet Unicode.
Tabellen beskriver de olika karaktärstyperna som stöds av C ++. Först försökte C ++ med en vagt definierad bred teckentyp, wchar_t. Denna typ var avsedd att vara den breda karaktärstypen som är naturlig för applikationsprogrammets miljö. C ++ '11 introducerade specifika typer för UTF-16 och UTF-32.
Variabel | Exempel | Vad det är | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
char | 'c' | ASCII eller UTF-8 tecken | wchar_t | L'c ' | Karaktär i stort format | char_16t | u'c' | UTF-16 tecken | char_32t | U'c ' | UTF-32 tecken |
UTF-16 är standardkodningen för Windows-program. Wchar_t-typen refererar till UTF-16 i koden:: Blocks / gcc compiler.
Endera av teckentyperna i tabellen kan också kombineras till strängar:
wchar_t * wideString = L "detta är en bred sträng";