WCTOMB(3C) Standard C Library Functions WCTOMB(3C)

wctomb, wctomb_l - convert a wide-character code to a character

#include <stdlib.h>
int wctomb(char *s, wchar_t wchar);

#include <stdlib.h>
#include <xlocale.h>
int wctomb_l(char *s, wchar_t wchar, locale_t loc);

The wctomb() function determines the number of bytes needed to represent the character corresponding to the wide-character code whose value is wchar. It stores the character representation (possibly multiple bytes) in the array object pointed to by s (if s is not a null pointer). At most MB_CUR_MAX bytes are stored.

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.

The function wctomb_l() behaves identically to wctomb(), except instead of operating in the current locale, it operates in the locale specified by loc.

If s is a null pointer, wctomb() returns 0 value. If s is not a null pointer, wctomb() returns −1 if the value of wchar does not correspond to a valid character, or returns the number of bytes that constitute the character corresponding to the value of wchar.

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

No errors are defined.

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

ATTRIBUTE TYPE ATTRIBUTE VALUE
CSI Enabled
Interface Stability See below.
MT-Level MT-Safe

The wctomb() function is Standard. The wctomb_l() function is Uncommitted.

mblen(3C), mbstowcs(3C), mbtowc(3C), newlocale(3C), setlocale(3C), uselocale(3C), wcstombs(3C), attributes(7), standards(7)

June 25, 2014 OmniOS