avr_stdint(3avr) | avr-libc | avr_stdint(3avr) |
avr_stdint - <stdint.h>: Standard Integer Types
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_t
These allow you to declare variables of the same size as a
pointer.
typedef int16_t intptr_t
typedef uint16_t uintptr_t
Integer types having at least the specified width
typedef int8_t int_least8_t
typedef uint8_t uint_least8_t
typedef int16_t int_least16_t
typedef uint16_t uint_least16_t
typedef int32_t int_least32_t
typedef uint32_t uint_least32_t
typedef int64_t int_least64_t
typedef uint64_t uint_least64_t
Integer types being usually fastest having at least the specified
width
typedef int8_t int_fast8_t
typedef uint8_t uint_fast8_t
typedef int16_t int_fast16_t
typedef uint16_t uint_fast16_t
typedef int32_t int_fast32_t
typedef uint32_t uint_fast32_t
typedef int64_t int_fast64_t
typedef uint64_t uint_fast64_t
Types designating integer data capable of representing any value
of any integer type in the corresponding signed or unsigned category
typedef int64_t intmax_t
typedef uint64_t uintmax_t
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)
#define INT_LEAST8_MAX INT8_MAX
#define INT_LEAST8_MIN INT8_MIN
#define UINT_LEAST8_MAX UINT8_MAX
#define INT_LEAST16_MAX INT16_MAX
#define INT_LEAST16_MIN INT16_MIN
#define UINT_LEAST16_MAX UINT16_MAX
#define INT_LEAST32_MAX INT32_MAX
#define INT_LEAST32_MIN INT32_MIN
#define UINT_LEAST32_MAX UINT32_MAX
#define INT_LEAST64_MAX INT64_MAX
#define INT_LEAST64_MIN INT64_MIN
#define UINT_LEAST64_MAX UINT64_MAX
#define INT_FAST8_MAX INT8_MAX
#define INT_FAST8_MIN INT8_MIN
#define UINT_FAST8_MAX UINT8_MAX
#define INT_FAST16_MAX INT16_MAX
#define INT_FAST16_MIN INT16_MIN
#define UINT_FAST16_MAX UINT16_MAX
#define INT_FAST32_MAX INT32_MAX
#define INT_FAST32_MIN INT32_MIN
#define UINT_FAST32_MAX UINT32_MAX
#define INT_FAST64_MAX INT64_MAX
#define INT_FAST64_MIN INT64_MIN
#define UINT_FAST64_MAX UINT64_MAX
#define INTPTR_MAX INT16_MAX
#define INTPTR_MIN INT16_MIN
#define UINTPTR_MAX UINT16_MAX
#define INTMAX_MAX INT64_MAX
#define INTMAX_MIN INT64_MIN
#define UINTMAX_MAX UINT64_MAX
C++ implementations should define these macros only when
__STDC_LIMIT_MACROS is defined before <stdint.h> is included
#define PTRDIFF_MAX INT16_MAX
#define PTRDIFF_MIN INT16_MIN
#define SIG_ATOMIC_MAX INT8_MAX
#define SIG_ATOMIC_MIN INT8_MIN
#define SIZE_MAX UINT16_MAX
#define WCHAR_MAX __WCHAR_MAX__
#define WCHAR_MIN __WCHAR_MIN__
#define WINT_MAX __WINT_MAX__
#define WINT_MIN __WINT_MIN__
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)
#include <stdint.h>
Use [u]intN_t if you need exactly N bits.
Since these typedefs are mandated by the C99 standard, they are preferred over rolling your own typedefs.
define a constant of type int16_t
largest positive value an int16_t can hold.
smallest negative value an int16_t can hold.
define a constant of type int32_t
largest positive value an int32_t can hold.
smallest negative value an int32_t can hold.
define a constant of type int64_t
largest positive value an int64_t can hold.
smallest negative value an int64_t can hold.
define a constant of type int8_t
largest positive value an int8_t can hold.
smallest negative value an int8_t can hold.
largest positive value an int_fast16_t can hold.
smallest negative value an int_fast16_t can hold.
largest positive value an int_fast32_t can hold.
smallest negative value an int_fast32_t can hold.
largest positive value an int_fast64_t can hold.
smallest negative value an int_fast64_t can hold.
largest positive value an int_fast8_t can hold.
smallest negative value an int_fast8_t can hold.
largest positive value an int_least16_t can hold.
smallest negative value an int_least16_t can hold.
largest positive value an int_least32_t can hold.
smallest negative value an int_least32_t can hold.
largest positive value an int_least64_t can hold.
smallest negative value an int_least64_t can hold.
largest positive value an int_least8_t can hold.
smallest negative value an int_least8_t can hold.
define a constant of type intmax_t
largest positive value an intmax_t can hold.
smallest negative value an intmax_t can hold.
largest positive value an intptr_t can hold.
smallest negative value an intptr_t can hold.
largest positive value a ptrdiff_t can hold.
smallest negative value a ptrdiff_t can hold.
largest positive value a sig_atomic_t can hold.
smallest negative value a sig_atomic_t can hold.
largest value a size_t can hold.
define a constant of type uint16_t
largest value an uint16_t can hold.
define a constant of type uint32_t
largest value an uint32_t can hold.
define a constant of type uint64_t
largest value an uint64_t can hold.
define a constant of type uint8_t
largest value an uint8_t can hold.
largest value an uint_fast16_t can hold.
largest value an uint_fast32_t can hold.
largest value an uint_fast64_t can hold.
largest value an uint_fast8_t can hold.
largest value an uint_least16_t can hold.
largest value an uint_least32_t can hold.
largest value an uint_least64_t can hold.
largest value an uint_least8_t can hold.
define a constant of type uintmax_t
largest value an uintmax_t can hold.
largest value an uintptr_t can hold.
16-bit signed type.
32-bit signed type.
64-bit signed type.
Note
8-bit signed type.
fastest signed int with at least 16 bits.
fastest signed int with at least 32 bits.
fastest signed int with at least 64 bits.
Note
fastest signed int with at least 8 bits.
signed int with at least 16 bits.
signed int with at least 32 bits.
signed int with at least 64 bits.
Note
signed int with at least 8 bits.
largest signed int available.
Signed pointer compatible type.
16-bit unsigned type.
32-bit unsigned type.
64-bit unsigned type.
Note
8-bit unsigned type.
fastest unsigned int with at least 16 bits.
fastest unsigned int with at least 32 bits.
fastest unsigned int with at least 64 bits.
Note
fastest unsigned int with at least 8 bits.
unsigned int with at least 16 bits.
unsigned int with at least 32 bits.
unsigned int with at least 64 bits.
Note
unsigned int with at least 8 bits.
largest unsigned int available.
Unsigned pointer compatible type.
Generated automatically by Doxygen for avr-libc from the source code.
Fri Jan 1 2021 | Version 2.0.0 |