dwww Home | Manual pages | Find package

wctomb(3)                   Library Functions Manual                  wctomb(3)

NAME
       wctomb - convert a wide character to a multibyte sequence

LIBRARY
       Standard C library (libc, -lc)

SYNOPSIS
       #include <stdlib.h>

       int wctomb(char *s, wchar_t wc);

DESCRIPTION
       If  s  is not NULL, the wctomb() function converts the wide character wc
       to its multibyte representation and stores it at the  beginning  of  the
       character  array  pointed to by s.  It updates the shift state, which is
       stored in a static anonymous variable known only to the  wctomb()  func-
       tion,  and returns the length of said multibyte representation, that is,
       the number of bytes written at s.

       The programmer must ensure that there is room for  at  least  MB_CUR_MAX
       bytes at s.

       If  s  is NULL, the wctomb() function resets the shift state, known only
       to this function, to the initial state, and returns nonzero if  the  en-
       coding has nontrivial shift state, or zero if the encoding is stateless.

RETURN VALUE
       If s is not NULL, the wctomb() function returns the number of bytes that
       have  been written to the byte array at s.  If wc can not be represented
       as a multibyte sequence (according to the current  locale),  -1  is  re-
       turned.

       If  s is NULL, the wctomb() function returns nonzero if the encoding has
       nontrivial shift state, or zero if the encoding is stateless.

ATTRIBUTES
       For an explanation of the terms used in this section, see attributes(7).
       ┌─────────────────────────────────────┬───────────────┬────────────────┐
       │ Interface                           Attribute     Value          │
       ├─────────────────────────────────────┼───────────────┼────────────────┤
       │ wctomb()                            │ Thread safety │ MT-Unsafe race │
       └─────────────────────────────────────┴───────────────┴────────────────┘

VERSIONS
       The function wcrtomb(3) provides a better interface to  the  same  func-
       tionality.

STANDARDS
       C11, POSIX.1-2008.

HISTORY
       POSIX.1-2001, C99.

NOTES
       The behavior of wctomb() depends on the LC_CTYPE category of the current
       locale.

SEE ALSO
       MB_CUR_MAX(3), mblen(3), mbstowcs(3), mbtowc(3), wcrtomb(3), wcstombs(3)

Linux man-pages 6.9.1              2024-05-02                         wctomb(3)

Generated by dwww version 1.16 on Tue Dec 16 04:18:13 CET 2025.