In der C-Programmierung sind Datentypen Deklarationen für Variablen. Sie bestimmen den Typ und die Größe der mit den Variablen verbundenen Daten. Zum Beispiel,
int myVar;
Hier ist myVar eine Variable vom Typ int
(Ganzzahl). Die Größe von int
ist 4 Bytes.
Grundtypen
Hier ist eine Tabelle mit häufig verwendeten Typen in der C-Programmierung für den schnellen Zugriff.
Typ | Größe (Bytes) | Formatangabe |
---|---|---|
int |
mindestens 2, gewöhnlich 4 | %d , %i |
char |
1 | %c |
float |
4 | %f |
double |
8 | %lf |
short int |
2 gewöhnlich | %hd |
unsigned int |
mindestens 2, gewöhnlich 4 | %u |
long int |
mindestens 4, gewöhnlich 8 | %ld , %li |
long long int |
mindestens 8 | %lld , %lli |
unsigned long int |
wenigstens 4 | %lu |
unsigned long long int |
wenigstens 8 | %llu |
signed char |
1 | %c |
unsigned char |
1 | %c |
long double |
mindestens 10, normalerweise 12 oder 16 | %Lf |
int
Ganzzahlen sind ganze Zahlen, die sowohl Nullen, positive als auch negative Werte, aber keine Dezimalwerte haben können. Zum Beispiel,0
, -5
, 10
Wir können int
verwenden, um eine Integer-Variable zu deklarieren.
int id;
Hier ist id eine Variable vom Typ Integer.
Sie können in der C-Programmierung mehrere Variablen auf einmal deklarieren. Zum Beispiel,
int id, age;
Die Größe von int
ist normalerweise 4 Bytes (32 Bits). Und sie kann 232
verschiedene Zustände von -2147483648
bis 2147483647
annehmen.
Float und double
float
und double
werden verwendet, um reelle Zahlen zu speichern.
float salary;double price;
In C können Fließkommazahlen auch in exponentieller Form dargestellt werden. Zum Beispiel,
float normalizationFactor = 22.442e2;
Was ist der Unterschied zwischen float
und double
?
Die Größe von float
(single precision float data type) ist 4 Bytes. Und die Größe von double
(double precision float data type) ist 8 Bytes.
char
Das Schlüsselwort char
wird für die Deklaration von Variablen vom Typ Zeichen verwendet. Zum Beispiel,
char test = 'h';
Die Größe der Zeichenvariable ist 1 Byte.
void
void
ist ein unvollständiger Typ. Er bedeutet „nichts“ oder „kein Typ“. Du kannst dir void als abwesend vorstellen.
Wenn zum Beispiel eine Funktion nichts zurückgibt, sollte ihr Rückgabetyp void
sein.
Beachte, dass du keine Variablen vom Typ void
erstellen kannst.
short und long
Wenn du eine große Zahl verwenden musst, kannst du einen Typspezifizierer long
verwenden. So geht’s:
long a;long long b;long double c;
Hier können die Variablen a und b Ganzzahlwerte speichern. Und c kann eine Fließkommazahl speichern.
Wenn Sie sicher sind, dass nur eine kleine Ganzzahl ( Bereich) verwendet wird, können Sie
short
verwenden.
short d;
Sie können die Größe einer Variablen immer mit dem sizeof()
Operator überprüfen.
#include <stdio.h> int main() { short a; long b; long long c; long double d; printf("size of short = %d bytes\n", sizeof(a)); printf("size of long = %d bytes\n", sizeof(b)); printf("size of long long = %d bytes\n", sizeof(c)); printf("size of long double= %d bytes\n", sizeof(d)); return 0;}
vorzeichenbehaftet und vorzeichenlos
In C sind signed
und unsigned
Typmodifikatoren. Mit ihnen kann man die Datenspeicherung eines Datentyps verändern. Zum Beispiel,
unsigned int x;int y;
Hier kann die Variable x nur Null und positive Werte aufnehmen, weil wir den Modifikator unsigned
verwendet haben.
Angesichts der Größe von int
von 4 Bytes kann die Variable y Werte von -231
bis 231-1
aufnehmen, während die Variable x Werte von 0
bis 232-1
aufnehmen kann.
Weitere in der C-Programmierung definierte Datentypen sind:
- bool Typ
- Aufzählungstyp
- Komplexe Typen
Abgeleitete Datentypen
Datentypen, die von grundlegenden Datentypen abgeleitet sind, sind abgeleitete Typen. Zum Beispiel: Arrays, Zeiger, Funktionstypen, Strukturen, usw.
Wir werden diese abgeleiteten Datentypen in späteren Tutorien kennenlernen.