libc.info: wctomb

Go backward to wcstombs
Go up to Stdlib
Go to the top op libc

`wctomb'--minimal wide char to multibyte converter

*Synopsis*
     #include <stdlib.h>
     int wctomb(char *S, wchar_t WCHAR);
   *Description*
When MB_CAPABLE is not defined, this is a minimal ANSI-conforming
implementation of `wctomb'.  The only "wide characters" recognized are
single bytes, and they are "converted" to themselves.
   When MB_CAPABLE is defined, this routine calls `_wctomb_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.
   Each call to `wctomb' modifies `*S' unless S is a null pointer or
MB_CAPABLE is defined and WCHAR is invalid.
*Returns*
This implementation of `wctomb' returns `0' if S is `NULL'; it returns
`-1' if MB_CAPABLE is enabled and the wchar is not a valid multi-byte
character, it returns `1' if MB_CAPABLE is not defined or the wchar is
in reality a single byte character, otherwise it returns the number of
bytes in the multi-byte character.
*Portability*
`wctomb' is required in the ANSI C standard.  However, the precise
effects vary with the locale.
   `wctomb' requires no supporting OS subroutines.