Dela via


Teckenuppsättningar med en byte och flerabyte

ASCII-teckenuppsättningen definierar tecken i intervallet 0x00 – 0x7F. Det finns andra teckenuppsättningar, främst europeiska, som definierar tecknen inom intervallet 0x00 – 0x7F identiskt med ASCII-teckenuppsättningen och definierar även en utökad teckenuppsättning från 0x80 – 0xFF. Därför räcker det med en SBCS-uppsättning (8-bitars, single-byte-character) för att representera ASCII-teckenuppsättningen och teckenuppsättningarna för många europeiska språk. Vissa icke-europeiska teckenuppsättningar, till exempel japanska Kanji, innehåller dock många fler tecken än vad ett kodningsschema med en enda byte kan representera och kräver därför MBCS-kodning (multibyte-character set).

Anmärkning

Många SBCS-rutiner för Microsoft-körningsbibliotek hanterar byte, tecken och strängar i flerabyte efter behov. Många flerbytesteckenuppsättningar definierar ASCII-teckenuppsättningen som en delmängd. I många flerbytesteckenuppsättningar är varje tecken i intervallet 0x00 – 0x7F är identisk med det tecken som har samma värde i ASCII-teckenuppsättningen. I både ASCII- och MBCS-teckensträngar har till exempel null-tecknet med en byte ('\0') värdet 0x00 och anger det avslutande null-tecknet.

En flerbytesteckenuppsättning kan bestå av både 1 byte och 2 byte tecken. En multibyte-sträng kan innehålla en blandning av tecken med en byte och två byte. Ett flerbytestecken med två byte har en led-byte och en släpföljd byte. I en viss teckenuppsättning med flerbyte ligger ledbitar inom ett visst intervall, liksom efterföljande byte. När dessa intervall överlappar varandra kan du behöva utvärdera kontexten för att avgöra om en given byte fungerar som en ledbyte eller en slutbyte.

Se även

Internationalisering
Universal C-körningsrutiner efter kategori