Delen via


Tekensets met één byte en multibyte

De ASCII-tekenset definieert tekens in het bereik 0x00 - 0x7F. Er zijn andere tekensets, voornamelijk Europese, die de tekens binnen het gebied 0x00 - 0x7F identiek aan de ASCII-tekenset definiëren en ook een uitgebreide tekenset definiëren van 0x80 - 0xFF. Een 8-bits, single-byte-character set (SBCS) is dus voldoende om de ASCII-tekenset en de tekensets voor veel Europese talen weer te geven. Sommige niet-Europese tekensets, zoals Japanse Kanji, bevatten echter veel meer tekens dan een coderingsschema voor één byte, en vereisen daarom codering met meerderebytetekens (MBCS).

Opmerking

Veel SBCS-routines voor runtime-bibliotheken van Microsoft verwerken waar nodig multibyte bytes, tekens en tekenreeksen. Veel sets met meerderebyte-tekens definiëren de ASCII-tekenset als een subset. In veel tekensets met meerdere bytes is elk teken in het bereik 0x00 - 0x7F identiek aan het teken met dezelfde waarde in de ASCII-tekenset. In zowel ASCII- als MBCS-tekenreeksen heeft het null-teken van één byte ('\0') bijvoorbeeld een waarde 0x00 en wordt het afsluitende null-teken aangegeven.

Een multibyte-tekenset kan bestaan uit zowel 1-byte- als 2-byte-tekens. Een multibyte-tekenreeks kan een combinatie bevatten van karakters met één byte en dubbelbyte-karakters. Een multibyte teken bestaat uit een voorloopbyte en een volgbyte. In een bepaalde multibyte-karakterset vallen de lead-bytes binnen een bepaald bereik, net als de volgbytes. Wanneer deze bereiken elkaar overlappen, moet u mogelijk de context evalueren om te bepalen of een bepaalde byte functioneert als een lead-byte of een trail-byte.

Zie ook

Internationalisering
Universal C-runtimeroutines per categorie