The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Выпуск языка программирования Rust 1.76"
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Присылайте удачные настройки в раздел примеров файлов конфигурации на WIKI.opennet.ru.
. "Выпуск языка программирования Rust 1.76" +2 +/
Сообщение от morphe (?), 09-Фев-24, 04:32 
> В таком случае, 4 байт действительно хватает для utf-8, остаётся вопрос с переменностью.

4 байт не хватит для представления любого символа в utf-8.
utf-8 это способ кодирования unicode символов, где 1 символ минимум 1 байт, а максимум 6 байт
В utf-16 - минимум 2, максимум 4
utf-32 - всегда 4 байта, потому что unicode символ по стандарту не может иметь codepoint больше по размеру чем 4 байта.

Строки в Rust utf-8, и там один символ может быть закодирован как 6 байт, что логично, ведь латиница в utf-32 занимала бы в 4 раза больше места чем нужно, а худший случай в 6 байт на codepoint пока не осуществим (Нет таких пока, китайский и прочие языки - максимум 5 байт)

Однако строки в Rust напрямую не индексируются посимвольно, а потому char сделали статичные 4 байта, поэтому char вмещает в себя любой unicode codepoint.

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Выпуск языка программирования Rust 1.76, opennews, 08-Фев-24, 23:16  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру