MBSTOWCS(3) NEWLIB MBSTOWCS(3)NAME
2.28 `mbstowcs'--minimal multibyte string to wide char converter
SYNOPSIS
#include <stdlib.h>
int mbstowcs(wchar_t *PWC, const char *S, size_t N);
DESCRIPTION
When _MB_CAPABLE is not defined, this is a minimal ANSI-conforming
implementation of `mbstowcs'. In this case, the only "multi-byte char‐
acter sequences" recognized are single bytes, and they are "converted"
to wide-char versions simply by byte extension.
When _MB_CAPABLE is defined, this routine calls `_mbstowcs_r' to
perform the conversion, passing a state variable to allow state depen‐
dent decoding. The result is based on the locale setting which may be
restricted to a defined set of locales.
RETURNS
This implementation of `mbstowcs' returns `0' if S is `NULL' or is the
empty string; it returns `-1' if _MB_CAPABLE and one of the multi-byte
characters is invalid or incomplete; otherwise it returns the minimum
of: `n' or the number of multi-byte characters in `s' plus 1 (to com‐
pensate for the nul character). 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.
PORTABILITY
`mbstowcs' is required in the ANSI C standard. However, the precise
effects vary with the locale.
`mbstowcs' requires no supporting OS subroutines.
SEE ALSOmbstowcs is part of the library. The full documentation for is main‐
tained as a Texinfo manual. If info and are properly installed at your
site, the command
info
will give you access to the complete manual.
NEWLIB April 2010 MBSTOWCS(3)