Documentation Archive Developer
Search
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 char-acter, character,
     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 function
     tion may be passed a locale directly. See xlocale(3) for more informa-tion. information.
     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 processed
     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