Skip site navigation (1)Skip section navigation (2)

FreeBSD Man Pages

Man Page or Keyword Search:
Man Architecture
Apropos Keyword Search (all sections) Output format
home | help
MBTOWC(3)              FreeBSD Library Functions Manual              MBTOWC(3)

NAME
     mbtowc - convert a character to a wide-character code

LIBRARY
     Standard C Library (libc, -lc)

SYNOPSIS
     #include <stdlib.h>

     int
     mbtowc(wchar_t * restrict wcharp, const char * restrict mbchar,
         size_t nbytes);

DESCRIPTION
     The mbtowc() function converts a multibyte character mbchar into a wide
     character according to the current conversion state, and stores the
     result in the object pointed to by wcharp.  Up to nbytes bytes are
     examined.

     A call with a null mbchar 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.

RETURN VALUES
     If mbchar is NULL, the mbtowc() function returns nonzero if shift states
     are supported, zero otherwise.

     Otherwise, if mbchar is not a null pointer, mbtowc() either returns 0 if
     mbchar represents the null wide character, or returns the number of bytes
     processed in mbchar, 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)

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

FreeBSD 11.0-PRERELEASE         April 11, 2004         FreeBSD 11.0-PRERELEASE

NAME | LIBRARY | SYNOPSIS | DESCRIPTION | RETURN VALUES | ERRORS | SEE ALSO | STANDARDS

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=mbtowc&sektion=3&manpath=FreeBSD+10.0-RELEASE>

home | help