#include <stdlib.h>
size_t wcstombs(char *s,
const wchar_t *pwcs, size_t n);
#include <locale.h>
size_t wcstombs_l(char *s,
const wchar_t *pwcs, size_t n, locale_t locale);
The wcstombs() function
converts a sequence of codes that correspond to multibyte
characters from the array pointed to by pwcs into a
sequence of multibyte characters that begins in the initial shift
state. Then, wcstombs() stores these multibyte characters
into the array pointed to by s. If a multibyte character
exceeds the limit of n total bytes or if a NULL
character is stored, wcstombs() stops. Each code is
converted as if by a call to the wctomb()
function, except that the shift state of the wctomb()
function is not affected.
No more than n bytes are
modified in the array pointed to by s. If copying takes
place between objects that overlap, the behavior is undefined.
wcstombs_l() behaves in the same way as wcstombs()
without the _l suffix, but uses the specified locale rather than the
global or per-thread locale. A locale_t is returned by newlocale().
- s
-
Points to the sequence of multibyte characters.
- pwcs
-
Points to the sequence of wide characters.
- n
-
Is the maximum number of bytes that can be stored in the multibyte string.
- locale
-
Is a locale_t perhaps returned by newlocale() or
LC_GLOBAL_LOCALE or 0 for the current thread locale set with uselocale().
The wcstombs() and wcstombs_l() functions return the number of bytes
written into s, excluding the terminating NULL,
if it was able to convert the wide character string. If the
pwcs string is NULL, the
wcstombs() and wcstombs_l() functions return
the required size of the destination string. If the conversion
could not be performed, -1 is returned.
wcstombs() conforms to ANSI/ISO 9899:1990 'ISO C90'
wcstombs_l() conforms to ANSI/ISO 9899:1999 'ISO C99'
MT-Safe, with exceptions.
The function wcstombs() is MT-Safe as long as no thread calls setlocale() while
this function is executing.
The function wcstombs_l() is MT-Safe as long as no thread calls freelocale() on locale while this function is executing.
None.
PTC MKS Toolkit for Professional Developers
PTC MKS Toolkit for Professional Developers 64-Bit Edition
PTC MKS Toolkit for Enterprise Developers
PTC MKS Toolkit for Enterprise Developers 64-Bit Edition
- Functions:
- newlocale(), setlocale(), wctomb(), wctomb_l()
PTC MKS Toolkit 10.5 Documentation Build 40.