man-pages/man3/wctomb.3.html
2021-03-31 01:06:50 +01:00

189 lines
3.9 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML><HEAD><TITLE>Man page of WCTOMB</TITLE>
</HEAD><BODY>
<H1>WCTOMB</H1>
Section: Linux Programmer's Manual (3)<BR>Updated: 2015-08-08<BR><A HREF="#index">Index</A>
<A HREF="/cgi-bin/man/man2html">Return to Main Contents</A><HR>
<A NAME="lbAB">&nbsp;</A>
<H2>NAME</H2>
wctomb - convert a wide character to a multibyte sequence
<A NAME="lbAC">&nbsp;</A>
<H2>SYNOPSIS</H2>
<PRE>
<B>#include &lt;<A HREF="file:///usr/include/stdlib.h">stdlib.h</A>&gt;</B>
<B>int wctomb(char *</B><I>s</I><B>, wchar_t </B><I>wc</I><B>);</B>
</PRE>
<A NAME="lbAD">&nbsp;</A>
<H2>DESCRIPTION</H2>
If
<I>s</I>
is not NULL,
the
<B>wctomb</B>()
function converts the wide character
<I>wc</I>
to its multibyte representation and stores it at the beginning of
the character array pointed to by
<I>s</I>.
It updates the shift state, which
is stored in a static anonymous variable
known only to the
<B>wctomb</B>()
function,
and returns the length of said multibyte representation,
that is, the number of
bytes written at
<I>s</I>.
<P>
The programmer must ensure that there is
room for at least
<B>MB_CUR_MAX</B>
bytes at
<I>s</I>.
<P>
If
<I>s</I>
is NULL, the
<B>wctomb</B>()
function
resets the shift state, known only to this function,
to the initial state, and
returns nonzero if the encoding has nontrivial shift state,
or zero if the encoding is stateless.
<A NAME="lbAE">&nbsp;</A>
<H2>RETURN VALUE</H2>
If
<I>s</I>
is not NULL, the
<B>wctomb</B>()
function
returns the number of bytes
that have been written to the byte array at
<I>s</I>.
If
<I>wc</I>
can not be
represented as a multibyte sequence (according
to the current locale), -1 is returned.
<P>
If
<I>s</I>
is NULL, the
<B>wctomb</B>()
function returns nonzero if the
encoding has nontrivial shift state, or zero if the encoding is stateless.
<A NAME="lbAF">&nbsp;</A>
<H2>ATTRIBUTES</H2>
For an explanation of the terms used in this section, see
<B><A HREF="/cgi-bin/man/man2html?7+attributes">attributes</A></B>(7).
<TABLE BORDER>
<TR VALIGN=top><TD><B>Interface</B></TD><TD><B>Attribute</B></TD><TD><B>Value</B><BR></TD></TR>
<TR VALIGN=top><TD>
<B>wctomb</B>()
</TD><TD>Thread safety</TD><TD>MT-Unsafe race<BR></TD></TR>
</TABLE>
<A NAME="lbAG">&nbsp;</A>
<H2>CONFORMING TO</H2>
POSIX.1-2001, POSIX.1-2008, C99.
<A NAME="lbAH">&nbsp;</A>
<H2>NOTES</H2>
The behavior of
<B>wctomb</B>()
depends on the
<B>LC_CTYPE</B>
category of the
current locale.
<P>
The function
<B><A HREF="/cgi-bin/man/man2html?3+wcrtomb">wcrtomb</A></B>(3)
provides
a better interface to the same functionality.
<A NAME="lbAI">&nbsp;</A>
<H2>SEE ALSO</H2>
<B><A HREF="/cgi-bin/man/man2html?3+MB_CUR_MAX">MB_CUR_MAX</A></B>(3),
<B><A HREF="/cgi-bin/man/man2html?3+mblen">mblen</A></B>(3),
<B><A HREF="/cgi-bin/man/man2html?3+mbstowcs">mbstowcs</A></B>(3),
<B><A HREF="/cgi-bin/man/man2html?3+mbtowc">mbtowc</A></B>(3),
<B><A HREF="/cgi-bin/man/man2html?3+wcrtomb">wcrtomb</A></B>(3),
<B><A HREF="/cgi-bin/man/man2html?3+wcstombs">wcstombs</A></B>(3)
<A NAME="lbAJ">&nbsp;</A>
<H2>COLOPHON</H2>
This page is part of release 5.05 of the Linux
<I>man-pages</I>
project.
A description of the project,
information about reporting bugs,
and the latest version of this page,
can be found at
<A HREF="https://www.kernel.org/doc/man-pages/.">https://www.kernel.org/doc/man-pages/.</A>
<P>
<HR>
<A NAME="index">&nbsp;</A><H2>Index</H2>
<DL>
<DT id="1"><A HREF="#lbAB">NAME</A><DD>
<DT id="2"><A HREF="#lbAC">SYNOPSIS</A><DD>
<DT id="3"><A HREF="#lbAD">DESCRIPTION</A><DD>
<DT id="4"><A HREF="#lbAE">RETURN VALUE</A><DD>
<DT id="5"><A HREF="#lbAF">ATTRIBUTES</A><DD>
<DT id="6"><A HREF="#lbAG">CONFORMING TO</A><DD>
<DT id="7"><A HREF="#lbAH">NOTES</A><DD>
<DT id="8"><A HREF="#lbAI">SEE ALSO</A><DD>
<DT id="9"><A HREF="#lbAJ">COLOPHON</A><DD>
</DL>
<HR>
This document was created by
<A HREF="/cgi-bin/man/man2html">man2html</A>,
using the manual pages.<BR>
Time: 00:06:00 GMT, March 31, 2021
</BODY>
</HTML>