mbtowc(3) BSD Library Functions Manual mbtowc(3)
NAME
mbtowc, mbtowc_l -- convert a character to a wide-character code
LIBRARY
Standard C Library (libc, -lc)
SYNOPSIS
#include <stdlib.h> int mbtowc(wchar_t *restrict pwc, const char *restrict s, size_t n); #include <stdlib.h> #include <xlocale.h> int mbtowc_l(wchar_t *restrict pwc, const char *restrict s, size_t n, locale_t loc);
DESCRIPTION
The mbtowc() function converts a multibyte character s into a wide char- acter, according to the current conversion state, and stores the result in the object pointed to by pwc. Up to n bytes are examined. A call with a null s pointer returns nonzero if the current encoding requires shift states, zero otherwise; if shift states are required, the shift state is reset to the initial state. While the mbtowc() function uses the current locale, the mbtowc_l() func- tion may be passed a locale directly. See xlocale(3) for more informa- tion.
RETURN VALUES
If s is NULL, the mbtowc() function returns nonzero if shift states are supported, zero otherwise. Otherwise, if s is not a null pointer, mbtowc() either returns 0 if s represents the null wide character, or returns the number of bytes pro- cessed in s, or returns -1 if no multibyte character could be recognized or converted. In this case, mbtowc()'s internal conversion state is undefined.
ERRORS
The mbtowc() function will fail if: [EILSEQ] An invalid multibyte sequence was detected. [EINVAL] The internal conversion state is invalid.
SEE ALSO
btowc(3), mblen(3), mbrtowc(3), mbstowcs(3), multibyte(3), wctomb(3), xlocale(3)
STANDARDS
The mbtowc() function conforms to ISO/IEC 9899:1999 (``ISO C99''). BSD April 11, 2004 BSD
Mac OS X 10.8 - Generated Wed Aug 29 06:50:21 CDT 2012