ADC Home > Reference Library > Reference > Mac OS X > Mac OS X Man Pages

 

This document is a Mac OS X manual page. Manual pages are a command-line technology for providing documentation. You can view these manual pages locally using the man(1) command. These manual pages come from many different sources, and thus, have a variety of writing styles.

For more information about the manual page format, see the manual page for manpages(5).



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 character, 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 other-wise; otherwise;
     wise; 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() function may be passed a locale
     directly. See xlocale(3) for more information.

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 charac-ter, character,
     ter, or returns the number of bytes processed 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

Did this document help you?
Yes: Tell us what works for you.
It’s good, but: Report typos, inaccuracies, and so forth.
It wasn’t helpful: Tell us what would have helped.