Integer Types


Detailed Description

 #include <inttypes.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.

Note:
If avr-gcc's -mint8 option is used, no 32-bit types will be available.

Todo:
There is a pending patch that may go into gcc to change the behaviour of the -mint8 option. The current (2003-09-17) situation for -mint8 is sizeof(int) == 1, sizeof(long) == 2 and sizeof(long long) == 8. Note the absence of a 4-byte, 32-bit type. The patch proposes to change sozeof(long long) to be 4 bytes (32 bits). When and if the patch is included in gcc, we will need to change avr-libc accordingly.


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


Typedef Documentation

typedef int int16_t
 

16-bit signed type.

typedef long int32_t
 

32-bit signed type.

typedef long long int64_t
 

64-bit signed type.

typedef signed char int8_t
 

8-bit signed type.

typedef int16_t intptr_t
 

Signed pointer compatible type.

typedef unsigned int uint16_t
 

16-bit unsigned type.

typedef unsigned long uint32_t
 

32-bit unsigned type.

typedef unsigned long long uint64_t
 

64-bit unsigned type.

typedef unsigned char uint8_t
 

8-bit unsigned type.

typedef uint16_t uintptr_t
 

Unsigned pointer compatible type.


Automatically generated by Doxygen 1.3.3 on 8 Oct 2003.