WCTOMB
Section: Linux Programmer's Manual (3)
Updated: 1999-07-25
Index
Return to Main Contents
NAME
wctomb - convert a wide character to a multibyte sequence
SYNOPSIS
#include <stdlib.h>
int wctomb(char *s, wchar_t wc);
DESCRIPTION
If s is not NULL,
the
wctomb()
function converts the wide character
wc to its multibyte representation and stores it at the beginning of
the character array pointed to by s.
It updates the shift state, which
is stored in a static anonymous variable
only known to the wctomb function,
and returns the length of said multibyte representation,
that is, the number of
bytes written at s.
The programmer must ensure that there is
room for at least MB_CUR_MAX
bytes at s.
If s is NULL, the
wctomb()
function
resets the shift state, only known to this function,
to the initial state, and
returns non-zero if the encoding has nontrivial shift state,
or zero if the encoding is stateless.
RETURN VALUE
If s is not NULL, the
wctomb()
function
returns the number of bytes
that have been written to the byte array at s.
If wc can not be
represented as a multibyte sequence (according
to the current locale), -1 is returned.
If s is NULL, the
wctomb()
function returns non-zero if the
encoding has nontrivial shift state, or zero if the encoding is stateless.
CONFORMING TO
C99.
NOTES
The behavior of
wctomb()
depends on the
LC_CTYPE
category of the
current locale.
This function is not multithread safe.
The function
wcrtomb(3)
provides
a better interface to the same functionality.
SEE ALSO
MB_CUR_MAX(3),
wcrtomb(3),
wcstombs(3)
COLOPHON
This page is part of release 3.22 of the Linux
man-pages
project.
A description of the project,
and information about reporting bugs,
can be found at
http://www.kernel.org/doc/man-pages/.