Datentypen in "C", Teil 1 |
|
In C gibt es nur wenige elementare Datentypen:
Der Datentyp char kann ein einzelnes Zeichen aus dem Zeichensatz der Maschine aufnehmen.
Achtung! Das ist nicht zwangsläufig eine 8-Bit breite Darstellung. Auf dem PC ist dies jedoch der Fall.
Der Datentyp int stellt einen ganzzahligen Wert dar, üblicherweise in der für die Maschine "natürlichen" Grösse. Dem Datentypen int können zusätzliche Varianten vorangestellt werden:
short int
oder
long int
Damit werden verschieden lange ganzzahlige
Werte zur Verfügung gestellt. Das Wort int
kann in diesen Vereinbarungen auch ausgelassen werden.
short wird auf einem handelsüblichen PC mit 16 Bit dargestellt und long
mit 32 Bit.
Jedem Integer-Typen kann zusätzlich das Attribut signed oder unsigned vorangestellt werden, um vorzeichenbehaftetete bzw. vorzeichenlose Werte zu definieren.
unsigned char
bezeichnet einen ganzzahligen, positiven (!)
Wert, dessen Wertebereich von 0 bis zur grössten darstellbaren Zahl reicht.
Die grösste darstellbare Zahl lässt sich einfach mit folgender Formel
berechnen:
unsigned: (2 Anzahl Bit) - 1 (z.B. 2 16 - 1 = 65535)
signed: 2 (Anzahl Bit - 1) - 1 (z.B. 2 16-1 - 1 = 32767)
Der Datentyp float stellt einen einfach genauen Gleitpunktwert dar.
Dieser
Datentyp sollte wenn möglich vermieden werden. Verwenden Sie lieber double, da praktisch alle
mathematischen Bibliotheksfunktionen ebenfalls mit double arbeiten.
Der Datentyp double stellt einen doppelt genauen Gleitpunktwert dar. Es kann zusätzlich das Attribut long vorangestellt werden.
long double
bezeichnet einen Gleitpunktwert mit besonders hoher Genauigkeit (extended precision).
Wie bereits gesagt arbeiten fast alle Bibliotheken mit mathematischen Funktionen mit dem Datentyp double.
Zusammenfassung der elementaren Datentypen mit deren Varianten:
Man beachte, dass es in "C" keinen Datentypen boolean,
für logische Werte, gibt.
Trotzdem kann natürlich mit Boolschen Werten gearbeitet werden.
Alle logischen Ausdrücke in "C" geben als Resultat
einen int-Wert zurück.
Gemäss Definition bedeutet dabei der Wert 0 False bzw Unwahr
oder wie immer ihr dem sagen wollt.
Jeder Wert ungleich 0 bedeutet True bzw. Wahr
oder sonst was.
Falls euer Compiler dies noch nicht selber definiert hat könnt ihr ganz einfach folgende Definitionen in euer Programm übernehmen:
#define TRUE 1
#define FALSE 0
|