![]() |
![]() |
C++ |
G.Eichelsdörfer - Staatliche Technikerschule Weilburg |
Um technische und naturwissenschaftliche Werte zu erfassen sind sog. Fließkommazahlen (floating point numbers) effizienter. Auch für Geldbeträge können sie eingesetzt werden, hier könnte man die Beträge allerding auch in Cent notieren. Sie bestehen aus zwei Teilen, der Mantisse und dem Exponenten. Die Mantisse repräsentiert die Ziffernfolge, der Exponent die Hochzahl zur Basis 2. Fließkommazahlen heißen sie dehalb, weil die Position des Kommas - im englischen ein Punkt - nicht festliegt, sondern vom Exponenten abhängt.
Mit Fließkommazahlen kann man einen wesentlich größeren Zahlenbereich abdecken als mit Ganzzahlen. Allerdings geht die Genauigkeit verloren. Es macht keinen Sinn die genaue Gleichheit zweier Fließkommawerte zu testen, weil die Rechengenauigkeit eines Computer zu sehr beschränkt ist.
In einem Computer würde beispielsweise die genaue Darstellung des Wertes 0,1 (1/10) unendlich viel Speicher erforderlich machen, weil dieser Wert im Dualsystem periodisch ist.
float
ist der kleinste Fließkommazahlentyp. Er umfasst in VC++ 4 Byte und kann Werte
von 3,4*10-38 bis 3,4*10+38 auch mit negativem Vorzeichen abdecken.
Es stehen 7 Ziffern zur Verfügung. Seine Genauigkeit ist sehr beschränkt.
Dieser Typ sollte nur eingesetzt werden, wenn andernfalls Arbeitsspeicher knapp ist.
double
ist der größere Fließkommazahlentyp. Er wird mit Hilfe von 8 Byte dargestellt
und kann Werte von 1,7*10-308 bis 1,7*10+308 auch mit
negativem Vorzeichen darstellen. Es stehen 15 Ziffern zur Verfügung.
Der Name double kommt von "doppelte Genauigkeit" (double precision).
Dies ist der Standarddatentyp für Zahlen mit Nachkommastellen.
long double
ist der größte Fließkommazahlentyp. Er nimmt 10 Byte ein und kann Werte von
1,2*10-4932 bis 1,2*10+4932 auch mit
negativem Vorzeichen aufnehmen. Es stehen 19 Ziffern zur Verfügung.
Ein unsigned
vor Fließkommatypen hat keine Wirkung.
Die angegebenen Wertebereiche gelten annähernd.
Für eigene Notizen