Один символ в UTF-8 может занимать от одного до 6 байт. В настоящее время используются символы от 1 до 4 байт. 6-и байтовые не используют. [
источник]
- - -
Я просто не понимаю, если char - это тип данных, размером в один байт (0-255), то как он вообще принципиально может хранить в себе больше дозволенного? О_о
- - -
Вот что нашёл:
Большинство программ могут работать с UTF-8 как с традиционными однобайтными кодировками, не обращая внимания на то, что символ представляется как несколько последовательных байт. Для работы с отдельными символами строки обычно перекодируются в UCS-4, так что каждому символу соответствует машинное слово.
Одной из первых успешных коммерческих реализаций Юникода стала среда программирования Java. В ней принципиально отказались от 8-битного представления символов в пользу 16-битного. Сейчас большинство языков программирования поддерживают строки Юникода, хотя их представление может различаться в зависимости от реализации.
|
[
источник]
- - -
Любопытно... Значит char = 1 байт - это только условность...
P.S: А Java рулит