Provided by: manpages-ru-dev_4.27.0-1_all bug

НАИМЕНОВАНИЕ

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

БИБЛИОТЕКА

       Стандартная библиотека языка C (libc, -lc)

ОБЗОР

       #include <stdlib.h>

       int mbtowc(wchar_t *restrict pwc, const char s[restrict .n], size_t n);

ОПИСАНИЕ

       The  main  case  for this function is when s is not NULL and pwc is not NULL.  In this case, the mbtowc()
       function inspects at most n bytes of the multibyte string starting  at  s,  extracts  the  next  complete
       multibyte character, converts it to a wide character and stores it at *pwc.  It updates an internal shift
       state  known  only  to  the mbtowc() function.  If s does not point to a null byte ('\0'), it returns the
       number of bytes that were consumed from s, otherwise it returns 0.

       Если в n байтах, начиная с s, не содержится полного многобайтового символа  или  если  в  них  содержится
       некорректный  многобайтовый  символ,  то  mbtowc()  возвращает  -1.  Это  может  произойти даже если n >=
       MB_CUR_MAX, если в многобайтовой строке содержится лишние сдвиговые последовательности.

       Ещё случай, когда s не равно NULL, а pwc равно NULL. В этом случае функция mbtowc() действует как описано
       выше, но не сохраняет преобразованный широкий символ в памяти.

       И третий вариант, когда s равно NULL. В этом случае pwc и n  игнорируются.  Функция  mbtowc()  сбрасывает
       состояние  сдвига,  известное только ей, в начальное состояние и возвращает не ноль, если кодировка имеет
       непростое состояние сдвига, или ноль, если кодировка не имеет состояний.

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

       Если s не равно NULL, то функция mbtowc() возвращает количество потраченных байт, начиная  с  s,  или  0,
       если s указывает на байт null, или -1 — при ошибке.

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

АТРИБУТЫ

       Описание терминов данного раздела смотрите в attributes(7).
       ┌───────────────────────────────────────────────────────────────┬──────────────────────┬────────────────┐
       │ ИнтерфейсАтрибутЗначение       │
       ├───────────────────────────────────────────────────────────────┼──────────────────────┼────────────────┤
       │ mbtowc()                                                      │ Безвредность в нитях │ MT-Unsafe race │
       └───────────────────────────────────────────────────────────────┴──────────────────────┴────────────────┘

ВЕРСИИ

       Данную функцию небезопасно использовать в нитях. Для этого лучше подходит функция  mbrtowc(3)  с  тем  же
       интерфейсом.

СТАНДАРТЫ

       C11, POSIX.1-2008.

ИСТОРИЯ

       POSIX.1-2001, C99.

ПРИМЕЧАНИЯ

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

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

       MB_CUR_MAX(3), mblen(3), mbrtowc(3), mbstowcs(3), wcstombs(3), wctomb(3)

ПЕРЕВОД

       Русский   перевод   этой   страницы   руководства   разработал(и)   aereiae  <aereiae@gmail.com>,  Alexey
       <a.chepugov@gmail.com>, Azamat Hackimov <azamat.hackimov@gmail.com>, Dmitriy S. Seregin <dseregin@59.ru>,
       Dmitry Bolkhovskikh <d20052005@yandex.ru>, ITriskTI <ITriskTI@gmail.com>,  Max  Is  <ismax799@gmail.com>,
       Yuri   Kozlov   <yuray@komyakino.ru>,   Иван   Павлов  <pavia00@gmail.com>,  Малянов  Евгений  Викторович
       <maljanow@outlook.com> и Kirill Rekhov <krekhov.dev@gmail.com>

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

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

Справочные страницы Linux 6.9.1                  15 июня 2024 г.                                       mbtowc(3)