wcstombs(3)

wcstombs3

Convert a wide-character string to a character string

Usage

#include <stdlib.h>

size_t

wcstombs(char *restrict s, const wchar_t *restrict pwcs, size_t n);

#include <stdlib.h>

#include <xlocale.h>

size_t

wcstombs_l(char *restrict s, const wchar_t *restrict pwcs, size_t n, locale_t loc);

Library

Standard C Library (libc, -lc)

Overview

The wcstombs() function converts a wide character string pwcs into a multibyte character string, s, beginning in the initial conversion state. Up to n bytes are stored in s. Partial multibyte characters at the end of the string are not stored. The multibyte character string is null terminated, if there is room.

Although the wcstombs() function uses the current locale, the wcstombs_l() function may be passed a locale directly. See xlocale(3) for more information.

Return values

The wcstombs() function returns the number of bytes converted (not including any terminating null), if successful; otherwise, it returns (size_t)-1.

Errors

The wcstombs() function will fail if:

[EILSEQ]

An invalid wide character was encountered.

[EINVAL]

The conversion state is invalid.

Releases

135 releases since Mac OS X 10.4; the text changed 2 times.

  1. 10.4–10.4.11
  2. 10.5–10.6.8
  3. 10.7–26.5

Standards

The wcstombs() function conforms to ISO/IEC 9899:1999 (“ISO C99”).

From Libc 1752.120.2 in macOS 26.5. Parsed by carta from the page's mdoc source.