MacrosLimitsofspecified-widthintegertypes
C++ implementations should define these macros only when __STDC_LIMIT_MACROS is defined before <stdint.h>
is included
#define INT8_MAX 0x7f
#define INT8_MIN (-INT8_MAX - 1)
#define UINT8_MAX (INT8_MAX * 2 + 1)
#define INT16_MAX 0x7fff
#define INT16_MIN (-INT16_MAX - 1)
#define UINT16_MAX (__CONCAT(INT16_MAX, U) * 2U + 1U)
#define INT32_MAX 0x7fffffffL
#define INT32_MIN (-INT32_MAX - 1L)
#define UINT32_MAX (__CONCAT(INT32_MAX, U) * 2UL + 1UL)
#define INT64_MAX 0x7fffffffffffffffLL
#define INT64_MIN (-INT64_MAX - 1LL)
#define UINT64_MAX (__CONCAT(INT64_MAX, U) * 2ULL + 1ULL)
Limitsofminimum-widthintegertypes
#define INT_LEAST8_MAXINT8_MAX
#define INT_LEAST8_MININT8_MIN
#define UINT_LEAST8_MAXUINT8_MAX
#define INT_LEAST16_MAXINT16_MAX
#define INT_LEAST16_MININT16_MIN
#define UINT_LEAST16_MAXUINT16_MAX
#define INT_LEAST32_MAXINT32_MAX
#define INT_LEAST32_MININT32_MIN
#define UINT_LEAST32_MAXUINT32_MAX
#define INT_LEAST64_MAXINT64_MAX
#define INT_LEAST64_MININT64_MIN
#define UINT_LEAST64_MAXUINT64_MAXLimitsoffastestminimum-widthintegertypes
#define INT_FAST8_MAXINT8_MAX
#define INT_FAST8_MININT8_MIN
#define UINT_FAST8_MAXUINT8_MAX
#define INT_FAST16_MAXINT16_MAX
#define INT_FAST16_MININT16_MIN
#define UINT_FAST16_MAXUINT16_MAX
#define INT_FAST32_MAXINT32_MAX
#define INT_FAST32_MININT32_MIN
#define UINT_FAST32_MAXUINT32_MAX
#define INT_FAST64_MAXINT64_MAX
#define INT_FAST64_MININT64_MIN
#define UINT_FAST64_MAXUINT64_MAXLimitsofintegertypescapableofholdingobjectpointers
#define INTPTR_MAXINT16_MAX
#define INTPTR_MININT16_MIN
#define UINTPTR_MAXUINT16_MAXLimitsofgreatest-widthintegertypes
#define INTMAX_MAXINT64_MAX
#define INTMAX_MININT64_MIN
#define UINTMAX_MAXUINT64_MAXLimitsofotherintegertypes
C++ implementations should define these macros only when __STDC_LIMIT_MACROS is defined before <stdint.h>
is included
#define PTRDIFF_MAXINT16_MAX
#define PTRDIFF_MININT16_MIN
#define SIG_ATOMIC_MAXINT8_MAX
#define SIG_ATOMIC_MININT8_MIN
#define SIZE_MAXUINT16_MAX
#define WCHAR_MAX __WCHAR_MAX__
#define WCHAR_MIN __WCHAR_MIN__
#define WINT_MAX __WINT_MAX__
#define WINT_MIN __WINT_MIN__
Macrosforintegerconstants
C++ implementations should define these macros only when __STDC_CONSTANT_MACROS is defined before
<stdint.h> is included.
These definitions are valid for integer constants without suffix and for macros defined as integer
constant without suffix
#define INT8_C(value) ((int8_t) value)
#define UINT8_C(value) ((uint8_t) __CONCAT(value, U))
#define INT16_C(value) value
#define UINT16_C(value) __CONCAT(value, U)
#define INT32_C(value) __CONCAT(value, L)
#define UINT32_C(value) __CONCAT(value, UL)
#define INT64_C(value) __CONCAT(value, LL)
#define UINT64_C(value) __CONCAT(value, ULL)
#define INTMAX_C(value) __CONCAT(value, LL)
#define UINTMAX_C(value) __CONCAT(value, ULL)
TypedefsExact-widthintegertypes
Integer types having exactly the specified width
typedef signed char int8_t
typedef unsigned char uint8_t
typedef signed int int16_t
typedef unsigned int uint16_t
typedef signed long int int32_t
typedef unsigned long int uint32_t
typedef signed long long int int64_t
typedef unsigned long long int uint64_tIntegertypescapableofholdingobjectpointers
These allow you to declare variables of the same size as a pointer.
typedef int16_tintptr_t
typedef uint16_tuintptr_tMinimum-widthintegertypes
Integer types having at least the specified width
typedef int8_tint_least8_t
typedef uint8_tuint_least8_t
typedef int16_tint_least16_t
typedef uint16_tuint_least16_t
typedef int32_tint_least32_t
typedef uint32_tuint_least32_t
typedef int64_tint_least64_t
typedef uint64_tuint_least64_tFastestminimum-widthintegertypes
Integer types being usually fastest having at least the specified width
typedef int8_tint_fast8_t
typedef uint8_tuint_fast8_t
typedef int16_tint_fast16_t
typedef uint16_tuint_fast16_t
typedef int32_tint_fast32_t
typedef uint32_tuint_fast32_t
typedef int64_tint_fast64_t
typedef uint64_tuint_fast64_tGreatest-widthintegertypes
Types designating integer data capable of representing any value of any integer type in the corresponding
signed or unsigned category
typedef int64_tintmax_t
typedef uint64_tuintmax_t