Contents|Index|Previous|Next

wctomb
[minimal wide char to multibyte converter]

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

DESCRIPTION
When MB_CAPABLE is not defined, this is a minimal ANSI-conforming implementation of wctomb. The only wide characters recognized are single bytes, and they are converted to themselves.

When MB_CAPABLE is defined, this routine calls _wctomb_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.

Each call to wctomb modifies *s unless s is a null pointer or MB_CAPABLE is defined and wchar is invalid.

RETURNS
This implementation of wctomb returns 0 if s is NULL; it returns -1 if MB_CAPABLE is enabled and the wchar  is not a valid multibyte character, it returns 1 if MB_CAPABLE is not defined or the wchar is in reality a single byte character, otherwise it returns the number of bytes in the multibyte character.

COMPLIANCE
wctomb is required in the ANSI C standard. However, the precise effects vary with the locale.

wctomb requires no supporting OS subroutines.