Content-type: text/html Man page of mbtowc

mbtowc

Section: Standard C Library Functions (3C)
Updated: 1 Nov 2003
Index Return to Main Contents
 

NAME

mbtowc - convert a character to a wide-character code  

SYNOPSIS

#include <stdlib.h> 

int mbtowc(wchar_t *restrict pwc, const char *restrict s, size_t n);  

DESCRIPTION

If s is not a null pointer, mbtowc() determines the number of the bytes that constitute the character pointed to by s. It then determines the wide-character code for the value of type wchar_t that corresponds to that character. (The value of the wide-character code corresponding to the null byte is 0.) If the character is valid and pwc is not a null pointer, mbtowc() stores the wide-character code in the object pointed to by pwc.

A call with s as a null pointer causes this function to return 0. The behavior of this function is affected by the LC_CTYPE category of the current locale. At most n bytes of the array pointed to by s will be examined.  

RETURN VALUES

If s is a null pointer, mbtowc() returns 0. If s is not a null pointer, mbtowc() returns 0 (if s points to the null byte), the number of bytes that constitute the converted character (if the next n or fewer bytes form a valid character), or -1 and may set errno to indicate the error (if they do not form a valid character).

In no case will the value returned be greater than n or the value of the MB_CUR_MAX macro.  

ERRORS

The mbtowc() function may fail if:

EILSEQ Invalid character sequence is detected.

 

USAGE

The mbtowc() function can be used safely in multithreaded applications, as long as setlocale(3C) is not being called to change the locale.  

ATTRIBUTES

See attributes(5) for descriptions of the following attributes:

ATTRIBUTE TYPEATTRIBUTE VALUE
CSIEnabled
Interface StabilityStandard
MT-LevelMT-Safe with exceptions

 

SEE ALSO

mblen(3C), mbstowcs(3C), setlocale(3C), wcstombs(3C), wctomb(3C), attributes(5), standards(5)


 

Index

NAME
SYNOPSIS
DESCRIPTION
RETURN VALUES
ERRORS
USAGE
ATTRIBUTES
SEE ALSO

This document was created by man2html, using the manual pages.
Time: 02:37:27 GMT, October 02, 2010