Converts a sequence of wide characters into a sequence of multibyte characters.
#include <stdlib.h>
size_t wcstombs (String, WcString, Number) char *String; const wchar_t *WcString; size_t Number;
The wcstombs subroutine converts the sequence of wide characters pointed to by the WcString parameter to a sequence of corresponding multibyte characters and places the results in the area pointed to by the String parameter. The conversion is terminated when the null wide character is encountered or when the number of bytes specified by the Number parameter (or the value of the Number parameter minus 1) has been placed in the area pointed to by the String parameter. If the amount of space available in the area pointed to by the String parameter would cause a partial multibyte character to be stored, the subroutine uses a number of bytes equalling the value of the Number parameter minus 1, because only complete multibyte characters are allowed.
The wcstombs subroutine returns the number of bytes modified. If a wide character is encountered that is not valid, a value of -1 is returned.
The wcstombs subroutine is unsuccessful if the following error occurs:
EILSEQ | An invalid character sequence is detected, or a wide-character code does not correspond to a valid character. |
This subroutine is part of Base Operating System (BOS) Runtime.
The mbstowcs subroutine, mbtowc subroutine, wcslen subroutine, wctomb subroutine.
National Language Support Overview for Programming, Subroutines Overview, Understanding Multibyte Code and Wide Character Code Conversion Subroutines in AIX Version 4.3 General Programming Concepts: Writing and Debugging Programs.