Manpage of MBTOWC

Google
Web www.fiveanddime.net

MBTOWC

Section: NEWLIB (3)
Updated: 2005 Feb 23
Index Return to Main Contents
 

NAME

1.27 `mbtowc'--minimal multibyte to wide char converter

 

SYNOPSIS


     #include <stdlib.h>
     int mbtowc(wchar_t *PWC, const char *S, size_t N);  

DESCRIPTION

When _MB_CAPABLE is not defined, this is a minimal ANSI-conforming implementation of `mbtowc'. In this case, only "multi-byte character sequences" recognized are single bytes, and they are "converted" to themselves. Each call to `mbtowc' copies one character from `*S' to `*PWC', unless S is a null pointer. The argument n is ignored.


   When _MB_CAPABLE is defined, this routine calls `_mbtowc_r' to perform the conversion, passing a state variable to allow state dependent decoding. The result is based on the locale setting which may be restricted to a defined set of locales.

 

RETURNS

This implementation of `mbtowc' returns `0' if S is `NULL' or is the empty string; it returns `1' if not _MB_CAPABLE or the character is a single-byte character; it returns `-1' if n is `0' or the multi-byte character is invalid; otherwise it returns the number of bytes in the multibyte character. If the return value is -1, no changes are made to the `pwc' output string. If the input is the empty string, a wchar_t nul is placed in the output string and 0 is returned. If the input has a length of 0, no changes are made to the `pwc' output string.

 

PORTABILITY

`mbtowc' is required in the ANSI C standard. However, the precise effects vary with the locale.


   `mbtowc' requires no supporting OS subroutines.

 

SEE ALSO

mbtowc is part of the libc library. The full documentation for libc is maintained as a Texinfo manual. If info and libc are properly installed at your site, the command
info libc

will give you access to the complete manual.


 

Index

NAME
SYNOPSIS
DESCRIPTION
RETURNS
PORTABILITY
SEE ALSO

This document was created by man2html, using the manual pages.
Time: 21:25:25 GMT, May 16, 2005



www.fiveanddime.net








Google
Web www.fiveanddime.net