std::mbstate_t
Определён в заголовочном файле <cuchar> | (начиная с C++17) | |
|---|---|---|
Определён в заголовочном файле <cwchar> | ||
struct mbstate_t; |
Тип mbstate_t — это тривиальный тип, не являющийся массивом, который может представлять любое из состояний преобразования, встречающихся в определённом реализацией наборе поддерживаемых правил кодирования многобайтовых символов. Значение mbstate_t, инициализированное нулём, представляет начальное состояние преобразования, однако могут существовать и другие значения mbstate_t, которые также представляют начальное состояние преобразования.
Возможная реализация mbstate_t — это тип структуры, содержащей массив для представления незавершённого многобайтового символа, целочисленный счётчик, указывающий количество обработанных байтов в массиве, и представление текущего состояния сдвига.
Следующие функции не следует вызывать из нескольких потоков без синхронизации, если аргумент std::mbstate_t* — нулевой указатель, из-за возможных гонок данных: std::mbrlen, std::mbrtowc, std::mbsrtowcs, std::mbtowc, std::wcrtomb, std::wcsrtombs, std::wctomb.
См. также
проверяет, представляет ли объект std::mbstate_t начальное состояние сдвига (функция) |
|
Документация по C для mbstate_t |
|
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/string/multibyte/mbstate_t