NAME
wcstombs
,
wcstombs_l
—
convert a wide-character string to a
character string
LIBRARY
library “libc”
SYNOPSIS
#include
<stdlib.h>
size_t
wcstombs
(char * restrict
mbstring, const wchar_t * restrict wcstring,
size_t nbytes);
#include
<xlocale.h>
size_t
wcstombs_l
(char * restrict
mbstring, const wchar_t * restrict wcstring,
size_t nbytes, locale_t
locale);
DESCRIPTION
Thewcstombs
()
and wcstombs_l
() functions convert a wide character
string wcstring into a multibyte character string,
mbstring, beginning in the initial conversion state. Up
to nbytes bytes are stored in
mbstring. Partial multibyte characters at the end of the
string are not stored. The multibyte character string is null terminated if
there is room.
The
wcstombs_l
()
function takes an explicit locale argument, whereas
the wcstombs
() function uses the current global or
per-thread locale.
RETURN VALUES
The wcstombs
() and
wcstombs_l
() functions return the number of bytes
converted (not including any terminating null), if successful, otherwise
they return (size_t)-1.
ERRORS
The wcstombs
() and
wcstombs_l
() functions will fail if:
- [
EILSEQ
] - An invalid wide character was encountered.
- [
EINVAL
] - The conversion state is invalid.
SEE ALSO
mbstowcs(3), multibyte(3), wcsrtombs(3), wctomb(3), xlocale(3)
STANDARDS
The wcstombs
() function conforms to
ISO/IEC 9899:1999
(“ISO C99”).