UCHAR.H(7) Miscellaneous Information Manual UCHAR.H(7)

uchar.hUnicode character handling

#include <uchar.h>

[CX] The functionality described on this reference page is aligned with the ISO C standard. Any conflict between the requirements described here and the ISO C standard is unintentional. This volume of POSIX.1-2024 defers to the ISO C standard.

The <uchar.h> header shall define the following types:

As described in <wchar.h> .
As described in <stddef.h> .
The same type as uint_least16_t , described in <stdint.h> .
The same type as uint_least32_t , described in <stdint.h> .

The following shall be declared as functions and may also be defined as macros. Function prototypes shall be provided.

size_t  c16rtomb(char *restrict, char16_t, mbstate_t *restrict);
size_t  c32rtomb(char *restrict, char32_t, mbstate_t *restrict);
size_t  mbrtoc16(char16_t *restrict, const char *restrict, size_t,
            mbstate_t *restrict);
size_t  mbrtoc32(char32_t *restrict, const char *restrict, size_t,
            mbstate_t *restrict);

[CX] Inclusion of the <uchar.h> header may make visible all symbols from the headers <stddef.h>, <stdint.h>, and <wchar.h>.

None.

None.

None.

<stddef.h>, <stdint.h>, <wchar.h>

XSH c16rtomb(3), mbrtoc16(3)

First released in Issue 8. Included for alignment with the ISO/IEC 9899:2018 standard.

June 14, 2024 posix.fail