Der Datentyp Integer repräsentiert eine Teilmenge der Ganzen Zahlen.
limits.h
Minima und Maxima der eingebauten Ganzzahltypen hängen von
der Architektur des Prozessors ab.
Auf 32-Bit Architekturen deckt der Typ int
typischerweise
4 Milliarden Werte und Zeiger einen Adressraum von 4 Gigabyte ab.
Die angegebenen Zahlen markieren das garantierte Minimum.
#define | MB_LEN_MAX | 4 | Oktette pro Multibyte Zeichen |
#define | MB_CUR_MAX | 4 | Dito in der aktuellen Sprache |
#define | CHAR_BIT | 8 | Immer 8 Bit |
#define | CHAR_MIN | -128 | |
#define | CHAR_MAX | 127 | |
#define | SCHAR_MIN | -128 | |
#define | SCHAR_MAX | 127 | |
#define | UCHAR_MAX | 255 | |
#define | SHRT_MIN | -32768 | Mindestens 16 Bit |
#define | SHRT_MAX | 32767 | |
#define | USHRT_MAX | 65535 | |
#define | INT_MIN | -32768 | Mindestens 16 Bit |
#define | INT_MAX | 32767 | |
#define | UINT_MAX | 65535 | 64 Kilobyte |
#define | LONG_MIN | -2147483648 | |
#define | LONG_MAX | 2147483647 | |
#define | ULONG_MAX | 4294967295 | 4 Gigabyte (109) |
#define | LLONG_MIN | -9223372036854775808 | Mindestens 64 Bit |
#define | LLONG_MAX | 9223372036854775807 | |
#define | ULLONG_MAX | 18446744073709551615 | 16 Exabyte (1018) |
stdint.h
Weil die tatsächliche Größe der eingebauten Ganzzahltypen von der Architektur des Prozessors und dem verwendeten Übersetzer abhängen, verwendet man möglichst sinnvolle Aliase, die eine Mindestgröße für bestimmte Zwecke garantieren.
#define | SIZE_MAX | Maximale Größe von Arrays | |
#define | RSIZE_MAX | Maximale Größe von Arrays mit Bereichsprüfung | |
#define | PTRDIFF_MIN/MAX | Maximale Entfernung von Zeigern | |
#define | SIG_ATOMIC_MIN/MAX | ||
#define | WCHAR_MIN/MAX | ||
#define | WINT_MIN/MAX | ||
#define | INT8_MIN | -128 | |
#define | INT8_MAX | 127 | |
… | |||
typedef | [u]int8_t | char | 8 Bit, 1 Oktett |
typedef | [u]int16_t | short int | 16 Bit, 2 Oktette, Wort |
typedef | [u]int32_t | long int | 32 Bit, 4 Oktette, Quad, Doppelwort |
typedef | [u]int64_t | long long int | 64 Bit, 8 Oktette, Octa, Quadrupelwort |
typedef | [u]intmin_t | char | Kleinster Ganzzahltyp |
typedef | [u]intmax_t | long long int | Größter Ganzzahltyp |
stdlib.h
Parser für die Umwandlung von Zeichenketten in Ganz- und Gleitpunktzahlen.
double | atof | (const char * nptr) | |
int | atoi | (const char * nptr) | |
long | atol | (const char * nptr) | |
long long | atoll | (const char * nptr) | |
double | strtod | (const char * nptr, char ** endptr) | |
float | strtof | (const char * nptr, char ** endptr) | |
long double | strtold | (const char * nptr, char ** endptr) | |
long | strtol | (const char * nptr, char ** endptr, int base) | |
long long | strtoll | (const char * nptr, char ** endptr, int base) | |
unsigned long | strtoul | (const char * nptr, char ** endptr, int base) | |
unsigned long long | strtoull | (const char * nptr, char ** endptr, int base) | |
long | a64l | (const char * s) | Radix-64 |
char * | l64a | (long value) | Radix-64 |
Ganzzahl-Arithmetik
int | abs | (int j) | Absolutwert |
long int | labs | (long j) | |
long long int | llabs | (long long j) | |
typedef struct div_t | |||
---|---|---|---|
int | quot | Quotient | |
int | rem | Rest | |
div_t | div | (int numerator, int denominator) | Division |
ldiv_t | ldiv | (long numerator, long denominator) | mit Rest |
lldiv_t | lldiv | (long long numerator, long long denominator) |
inttypes.h
Parser mit Prüfung.
intmax_t | strtoimax | (const char * nptr, char ** endptr, int base) | |
uintmax_t | strtoumax | (const char * nptr, char ** endptr, int base) | |
intmax_t | wcstoimax | (const wchar_t * nptr, wchar_t ** endptr, int base) | |
uintmax_t | wcstoumax | (const wchar_t * nptr, wchar_t ** endptr, int base) |
Absolutwert und Division mit Rest
intmax_t | imaxabs | (intmax_t n) | Absolutwert |
typedef | imaxdiv_t | ||
---|---|---|---|
long int | quot | ||
long int | rem | ||
imaxdiv_t | imaxdiv | (intmax_t numererator, intmax_t denominator) | Division mit Rest |