Как Go обрабатывает символы размером больше одного байта? - PullRequest
0 голосов
/ 26 июня 2018

В Go байт такой же, как и uint8.Это означает, что в байте может храниться значение от 0 до 255.

Строка также может быть записана как часть байтов.Я читал, что между строкой и фрагментом байтов почти нет различий (кроме изменчивости).

Так как же возможно в Go написать что-то вроде «世界», когда этого явно нет впервые 255 символов в таблице кодировки UTF-8?Как Go обрабатывает символы, не входящие в первые 255 строк таблицы кодирования UTF8?

1 Ответ

0 голосов
/ 26 июня 2018

Go использует кодировку UTF-8 для исходных файлов, строковых литералов, [] преобразований рун в строки, преобразований рун в строки, целочисленных в строковые преобразования и в диапазоне по строке.

UTF-8 использует от одного до четырех байтов для кодирования символа.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...