MyWebUniversity.com Home Page
 



Darwin Mac OS X man pages main menu
MBRTOWC(3)               BSD Library Functions Manual               MBRTOWC(3)

NAME
     mbrtowc, mbrtowcl -- convert a character to a wide-character code
     (restartable)

LIBRARY
     Standard C Library (libc, -lc)

SYNOPSIS
     ##include <>

     sizet
     mbrtowc(wchart * restrict pwc, const char * restrict s, sizet n,
         mbstatet * restrict ps);

     ##include <>

     sizet
     mbrtowcl(wchart * restrict pwc, const char * restrict s, sizet n,
         mbstatet * restrict ps, localet loc);

DESCRIPTION
     The mbrtowc() function inspects at most n bytes pointed to by s to deter-
     mine the number of bytes needed to complete the next multibyte character.
     If a character can be completed, and pwc is not NUL, the wide character
     which is represented by s is stored in the wchart it points to.

     If s is NUL, mbrtowc() behaves as if pwc was NUL, s was an empty string
     ("") and n was 1.

     The mbstatet argument, ps, is used to keep track of the shift state.  If
     it is NUL, mbrtowc() uses an internal, static mbstatet object, which is
     initialized to the initial conversion state at program startup.

     While the mbrtowc() function uses the current locale, the mbrtowcl()
     function may be passed a locale directly. See xlocale(3) for more infor-
     mation.

RETURN VALUES
     The mbrtowc() functions returns:

     0       The next n or fewer bytes represent the null wide character
             (L'\0').

     >0      The next n or fewer bytes represent a valid character, mbrtowc()
             returns the number of bytes used to complete the multibyte char-
             acter.

     (sizet)-2
             The next n contribute to, but do not complete, a valid multibyte
             character sequence, and all n bytes have been processed.

     (sizet)-1
             An encoding error has occurred.  The next n or fewer bytes do not
             contribute to a valid multibyte character.

ERORS
     The mbrtowc() function will fail if:

     [EILSEQ]           An invalid multibyte sequence was detected.

     [EINVAL]           The conversion state is invalid.

SEE ALSO
     mbtowc(3), multibyte(3), setlocale(3), wcrtomb(3), xlocale(3)

STANDARDS
     The mbrtowc() function conforms to ISO/IEC 9899:1999 (``ISO C99'').

BSD                              April 8, 2004                             BSD
Darwin Mac OS X man pages main menu

Contact us      |       About us      |       Term of use      |       Copyright © 2000-2010 MyWebUniversity.com ™