uchar.h — заголовочный файл стандартной библиотеки языка программирования С, который предоставляет функции и типы для работы с символами Юникода. Данный заголовочный файл появился в стандарте C11.[1]

Типы править

char16_t

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

char32_t

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

Функции править

size_t c16rtomb (char * pmb, char16_t c16, mbstate_t * ps)

Преобразует 16-битный символ c16 в его многобайтовый эквивалент и сохраняет его в массиве, на который указывает pmb. Функция возвращает длину в байтах сохраненной многобайтовой последовательности.

size_t c32rtomb (char * pmb, char32_t c32, mbstate_t * ps)

Преобразует 32-битный символ c32 в его многобайтовый эквивалент и сохраняет его в массиве, на который указывает pmb. Функция возвращает длину в байтах сохраненной многобайтовой последовательности.

size_t mbrtoc16 (char16_t * pc16, const char * pmb, size_t max, mbstate_t * ps)

Читает не более max байт многобайтовой последовательности pmb и сохраняет ее эквивалент в виде 16-битного символа в переменную, на которую указывает pc16. Функция возвращает количество байт, которые потребовалось считать из последовательности pmb, чтобы получить 16-битный символ.

size_t mbrtoc32 (char32_t * pc32, const char * pmb, size_t max, mbstate_t * ps)

Читает не более max байт многобайтовой последовательности pmb и сохраняет ее эквивалент в виде 32-битного символа в переменную, на которую указывает pc32. Функция возвращает количество байт, которые потребовалось считать из последовательности pmb, чтобы получить 32-битный символ.

Ссылки править

Примечания править

  1. ISO/IEC 9899:201x. Дата обращения: 12 июля 2020. Архивировано 29 марта 2018 года.