Arbeiten mit Gleitkommazahlen
Swipe um das Menü anzuzeigen
Die Zahlen enden nicht bei Ganzzahlen. Es gibt auch Gleitkommazahlen. In C++ werden die Datentypen float und double verwendet, um sie zu speichern. Dieses Kapitel behandelt den Datentyp float, während das nächste Kapitel auf den Datentyp double und dessen Unterschiede eingeht. Nachfolgend befindet sich die Syntax für die Verwendung von float:
float.h
1float num = 0.45;
Ein kurzer Blick darauf, wie Gleitkommazahlen im Speicher abgelegt werden.
Der Datentyp float belegt 4 Byte Speicher, genau wie ein int. Die Umwandlung solcher Zahlen in Binärcode ist jedoch deutlich komplizierter:
Hier ist ein Beispiel dafür, wie float num = 13.45 gespeichert wird:
Es ist in Ordnung, wenn nicht alles sofort verständlich ist. Wichtig ist zu wissen, dass die Darstellung eines float in drei Teile unterteilt ist:
-
Die Vorzeichen-Komponente wird durch ein Plus (
+) oder Minus (-) dargestellt. Sie gibt an, ob eine Zahl positiv oder negativ ist; -
Die Exponenten-Komponente bestimmt den Wertebereich, den eine Zahl darstellen kann. Je größer der Exponent, desto größer ist der darstellbare Wertebereich. Beim Datentyp
floatbelegt der Exponent 1 Byte (8 Bit) im Speicher; -
Die Mantissen-Komponente bestimmt die Genauigkeit eines
float. Nicht alle Zahlen können exakt im Speicher dargestellt werden, und die Genauigkeit einer Zahl wird durch die Länge der Mantisse definiert. Beim Datentypfloatbeträgt die Mantissenlänge 23 Bit.
Daher besitzt float eine Genauigkeit von 7 Dezimalstellen und einen Bereich von 1.2e-38 bis 3.4e+38 (gilt für negative und positive Zahlen). In den meisten Fällen ist der Wertebereich kein Problem. Die Genauigkeit kann jedoch manchmal eine Einschränkung sein.
Danke für Ihr Feedback!
Fragen Sie AI
Fragen Sie AI
Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen