Scroll to navigation

wctomb(3) Library Functions Manual wctomb(3)

ИМЯ

wctomb - преобразует широкий символ в многобайтовую последовательность

LIBRARY

Standard C library (libc, -lc)

СИНТАКСИС

#include <stdlib.h>
int wctomb(char *s, wchar_t wc);

ОПИСАНИЕ

Если значение s не равно NULL, то функция wctomb() преобразует широкий символ wc в его многобайтовое представление и сохраняет его в начале массива символов, на который указывает s. Изменяется переменная смещения, которая хранится в статической анонимной переменной, известной только функции wctomb(), затем возвращается длина полученного многобайтового представления, т.е. число байтов, записанных в s.

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

Если значение s равно NULL, то функция wctomb() обнуляет состояние смещения (известное только этой функции), переводя его начальное положение, и возвращает ненулевое значение, если кодировка имеет необычное смещение; ноль будет возвращён, если кодировка не имеет смещения.

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

Если значение s не равно NULL, то функция wctomb() возвращает количество байтов, записанных в байтовый массив по адресу s. Если wc не может быть представлен в виде многобайтовой последовательности (в соответствии с текущей системной локалью), то возвращается -1.

Если значение s равно NULL, то функция wctomb() возвращает не ноль, если кодировка имеет необычное смещение, или ноль, если кодировка не имеет смещения.

АТРИБУТЫ

Описание терминов данного раздела смотрите в attributes(7).

Интерфейс Атрибут Значение
wctomb() Безвредность в нитях MT-Unsafe race

ВЕРСИИ

Функция wcrtomb(3) предоставляет лучший интерфейс с теми же возможностями.

СТАНДАРТЫ

C11, POSIX.1-2008.

ИСТОРИЯ

POSIX.1-2001, C99.

ПРИМЕЧАНИЯ

Поведение wctomb() зависит от категории LC_CTYPE текущей локали.

СМОТРИТЕ ТАКЖЕ

MB_CUR_MAX(3), mblen(3), mbstowcs(3), mbtowc(3), wcrtomb(3), wcstombs(3)

ПЕРЕВОД

Русский перевод этой страницы руководства разработал Azamat Hackimov <azamat.hackimov@gmail.com> и Yuri Kozlov <yuray@komyakino.ru>

Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной лицензии GNU (GNU General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html версии 3 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.

Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом разработчику по его адресу электронной почты или по адресу списка рассылки русских переводчиков.

2 мая 2024 г. Linux man-pages (unreleased)