.\" -*- coding: UTF-8 -*- '\" t .\" Copyright (c) Bruno Haible .\" .\" SPDX-License-Identifier: GPL-2.0-or-later .\" .\" References consulted: .\" GNU glibc-2 source code and manual .\" Dinkumware C library reference http://www.dinkumware.com/ .\" OpenGroup's Single UNIX specification http://www.UNIX-systems.org/online.html .\" ISO/IEC 9899:1999 .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH wcstombs 3 "20 июля 2023 г." "Linux man\-pages 6.05.01" .SH ИМЯ wcstombs \- преобразует широкосимвольную строку в многобайтовую строку .SH LIBRARY Standard C library (\fIlibc\fP, \fI\-lc\fP) .SH СИНТАКСИС .nf \fB#include \fP .PP \fBsize_t wcstombs(char \fP\fIdest\fP\fB[restrict .\fP\fIn\fP\fB], const wchar_t *restrict \fP\fIsrc\fP\fB,\fP \fB size_t \fP\fIn\fP\fB);\fP .fi .SH ОПИСАНИЕ Если значение \fIdest\fP не равно NULL, то функция \fBwcstombs\fP() преобразует широкосимвольную строку \fIsrc\fP в многобайтовую строку, начинающуюся с \fIdest\fP. В \fIdest\fP будет записано не более \fIn\fP байт. Последовательность символов, помещённая в \fIdest\fP, начинается с первоначальным состоянием сдвига. Преобразование может прекратиться по трём причинам: .IP \[bu] 3 Встретившийся широкий символ нельзя представить в виде многобайтовой последовательности (в соответствии с текущей системной локалью). В этом случае возвращается \fI(size_t)\ \-1\fP. .IP \[bu] Достигнут предел по длине. В этом случае возвращается количество байтов, записанных в \fIdest\fP, но состояние текущего смещения в строке теряется. .IP \[bu] The wide\-character string has been completely converted, including the terminating null wide character (L\[aq]\e0\[aq]). In this case, the conversion ends in the initial shift state. The number of bytes written to \fIdest\fP, excluding the terminating null byte (\[aq]\e0\[aq]), is returned. .PP Программист должен быть уверен, что в \fIdest\fP достаточно места для, по крайней мере, \fIn\fP байт. .PP Если значение \fIdest\fP равно NULL, то \fIn\fP игнорируется и преобразование выполняется как описано выше, исключая то, что преобразованные байты не записываются в память и нет ограничения по длине. .PP Для того, чтобы избежать ограничения пункта 2, программист должен удостовериться, что значение \fIn\fP больше или равно \fIwcstombs(NULL,src,0)+1\fP. .SH "ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ" Функция \fBwcstombs\fP() возвращает количество байт в полученной многобайтовой последовательности, не включая завершающий байт null. Если встречается широкий символ, который невозможно преобразовать, возвращается \fI(size_t)\ \-1\fP. .SH АТРИБУТЫ Описание терминов данного раздела смотрите в \fBattributes\fP(7). .TS allbox; lbx lb lb l l l. Интерфейс Атрибут Значение T{ .na .nh \fBwcstombs\fP() T} Безвредность в нитях MT\-Safe .TE .sp 1 .SH ВЕРСИИ Функция \fBwcsrtombs\fP(3) предоставляет лучший интерфейс с теми же возможностями. .SH СТАНДАРТЫ C11, POSIX.1\-2008. .SH ИСТОРИЯ POSIX.1\-2001, C99. .SH ЗАМЕЧАНИЯ Поведение \fBwcstombs\fP() зависит от категории \fBLC_CTYPE\fP текущей локали. .SH "СМ. ТАКЖЕ" \fBmblen\fP(3), \fBmbstowcs\fP(3), \fBmbtowc\fP(3), \fBwcsrtombs\fP(3), \fBwctomb\fP(3) .PP .SH ПЕРЕВОД Русский перевод этой страницы руководства был сделан Azamat Hackimov и Yuri Kozlov . .PP Этот перевод является бесплатной документацией; прочитайте .UR https://www.gnu.org/licenses/gpl-3.0.html Стандартную общественную лицензию GNU версии 3 .UE или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ. .PP Если вы обнаружите ошибки в переводе этой страницы руководства, пожалуйста, отправьте электронное письмо на .MT man-pages-ru-talks@lists.sourceforge.net .ME .