Die Beschreibung für Typ float
in C erwähnt, dass die Anzahl der signifikanten Stellen 6
ist. AllerdingsAnzahl der signifikanten Stellen für einen Fließkommatyp
float f = 12345.6;
und dann printf mit dem Druck() nicht 12345.6
druckt, druckt es 12345.599609
. Was bedeutet "6 signifikante Ziffern" (oder "15 im Fall eines double
") für einen Fließkommatyp?
Beachten Sie, dass Fließkommatypen nicht in der Basis 10 gespeichert sind, daher ist die Anzahl der signifikanten * Dezimal * -Ziffern notwendigerweise eine Annäherung. –
Tatsächlich gibt es 8 Bits für exp und 23 Bits für Frac. – halfelf