| Name | Description | Notes | Source | Availability | |||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
__STDC_ |
Indicator of equivalence of
char32_t and UTF-32 |
L | ? | M | Predefined | C11 | |||||
ATOMIC_ |
Lock-free property of type atomic_ |
? | M | <stdatomic.h> |
C11 | ||||||
atomic_ |
Atomic character type | ? | T | <stdatomic.h> |
C11 | ||||||
char32_t |
Potential 32-bit Unicode-character type | ? | T | <uchar.h> |
C11 | ||||||
char32_t is an unsigned integer type of at least 32 bits, the
same type that uint_ is an alias of,
so it has the range 0 to UINT_, which
is at least 4294967295. It is intended
to hold characters
encoded in UTF-32. However, this is only guaranteed if
__STDC_ is predefined (which
expands to 1 if it is).
The functions mbrtoc32 and
c32rtomb can be used
to convert between sequences of
char32_t and char. Character constants of type
char32_t take the form U'x'. String
literals of type
char32_t[] take the form U"abc".
atomic_
is an alias for _Atomic
char32_t. This type is lock-free always if
ATOMIC_ is
2, sometimes if 1, and never if 0.