libc.info: wcstombs

Go forward to wctomb
Go backward to system
Go up to Stdlib
Go to the top op libc

`wcstombs'--minimal wide char string to multibyte string converter

*Synopsis*
     #include <stdlib.h>
     int wcstombs(const char *S, wchar_t *PWC, size_t N);
   *Description*
When MB_CAPABLE is not defined, this is a minimal ANSI-conforming
implementation of `wcstombs'.  In this case, all wide-characters are
expected to represent single bytes and so are converted simply by
casting to char.
   When MB_CAPABLE is defined, this routine calls `_wcstombs_r' to
perform the conversion, passing a state variable to allow state
dependent decoding.  The result is based on the locale setting which may
be restricted to a defined set of locales.
*Returns*
This implementation of `wcstombs' returns `0' if S is `NULL' or is the
empty string; it returns `-1' if MB_CAPABLE and one of the wide-char
characters does not represent a valid multi-byte character; otherwise
it returns the minimum of: `n' or the number of bytes that are
transferred to `s', not including the nul terminator.
   If the return value is -1, the state of the `pwc' string is
indeterminate.  If the input has a length of 0, the output string will
be modified to contain a wchar_t nul terminator if `n' > 0.
*Portability*
`wcstombs' is required in the ANSI C standard.  However, the precise
effects vary with the locale.
   `wcstombs' requires no supporting OS subroutines.