uchar.h — Unicode 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:
- mbstate_t
- As described in <wchar.h>.
- size_t
- As described in <stddef.h>.
- char16_t
- The same type as uint_least16_t, described in <stdint.h>.
- char32_t
- 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.
First released in Issue 8. Included for alignment with the ISO/IEC 9899:2018 standard.
return to top of page