Bei der Programmierung von Mikrokontrollern ist die Definition einiger ganzzahliger Datentypen sinnvoll, an denen eindeutig die Bit-Länge abgelesen werden kann.
Standardisierte Datentypen werden in der Header-Datei stdint.h definiert. Zur Nutzung der standardisierten Typen bindet man die "Definitionsdatei" wie folgt ein:
// ab avr-libc Version 1.2.0 möglich und empfohlen:
#include <stdint.h>
// veraltet: #include <inttypes.h>
|
Einige der dort definierten Typen (avr-libc Version 1.0.4):
typedef signed char int8_t;
typedef unsigned char uint8_t;
typedef short int16_t;
typedef unsigned short uint16_t;
typedef long int32_t;
typedef unsigned long uint32_t;
typedef long long int64_t;
typedef unsigned long long uint64_t;
|
- int8_t steht für einen 8-Bit Integer mit einem Wertebereich -128 bis +127.
- uint8_t steht für einen 8-Bit Integer ohne Vorzeichen (unsigned int) mit einem Wertebereich von 0 bis 255
- int16_t steht für einen 16-Bit Integer mit einem Wertebereich -32768 bis +32767.
- uint16_t steht für einen 16-Bit Integer ohne Vorzeichen (unsigned int) mit einem Wertebereich von 0 bis 65535.
Die Typen ohne vorangestelltes u werden als vorzeichenbehaftete Zahlen abgespeichert. Typen mit vorgestelltem u dienen der Ablage von positiven Zahlen (inkl. 0). Siehe dazu auch: Dokumentation der avr-libc Abschnitt Modules/(Standard) Integer Types.
|