17 Language support library [support] (original) (raw)
17.4 Arithmetic types [support.arith.types]
17.4.1 Header synopsis [cstdint.syn]
The header supplies integer types having specified widths, and macros that specify limits of integer types.
The header defines all types and macros the same as the C standard library header .
The types denoted by intmax_t and uintmax_tare not required to be able to represent all values of extended integer types wider than long long and unsigned long long, respectively.
See also: ISO/IEC 9899:2024, 7.22
All types that use the placeholder _N_are optional when _N_is not 8, 16, 32, or 64.
The exact-width typesint_N__t and uint_N__tfor N = 8, 16, 32, and 64are also optional; however, if an implementation defines integer types with the corresponding width and no padding bits, it defines the corresponding typedef-names.
Each of the macros listed in this subclause is defined if and only if the implementation defines the corresponding typedef-name.
[Note 1:
The macros INT_N__C and UINT_N__Ccorrespond to the typedef-names int_least_N__t and uint_least_N__t, respectively.
— _end note_]