#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.
-mint8
option is used, no 32-bit types will be available for all versions of GCC below 3.5.
8-bit types. | |
typedef signed char | int8_t |
typedef unsigned char | uint8_t |
16-bit types. | |
typedef int | int16_t |
typedef unsigned int | uint16_t |
32-bit types. | |
typedef long | int32_t |
typedef unsigned long | uint32_t |
64-bit types. | |
typedef long long | int64_t |
typedef unsigned long long | uint64_t |
Pointer types. | |
These allow you to declare variables of the same size as a pointer. | |
typedef int16_t | intptr_t |
typedef uint16_t | uintptr_t |
|
16-bit signed type. |
|
32-bit signed type. |
|
64-bit signed type. |
|
8-bit signed type. |
|
Signed pointer compatible type. |
|
16-bit unsigned type. |
|
32-bit unsigned type. |
|
64-bit unsigned type. |
|
8-bit unsigned type. |
|
Unsigned pointer compatible type. |