Diskussion:C-Programmierung: Typumwandlung

Letzter Kommentar: vor 2 Jahren von Zebaba in Abschnitt Genauigkeit int -> float

Einschränkende Typumwandlung

Bearbeiten

Warum sollte bei der einschränkenden Typumwandlung ausschließlich explizite Typumwandlung verwendet werden? -- Tantalum 01:15, 30. Dez. 2007 (CET)Beantworten

Eine explizite Typumwandlung ist eine die man syntaktisch möchte und lässt keinen Zweifel darüber ob man genau das möchte. Ungewollte Typumwandlungen (vergessene Typumwandlungen) sind häufig Fehlerquellen und meistens sogar die Ursache von sehr schwer zu findenden Fehlern. -- ThePacker 01:52, 30. Dez. 2007 (CET)Beantworten

Genauigkeit int -> float

Bearbeiten

"Wandeln wir int in float um, wird impliziert erweitert, d. h. es geht keine Genauigkeit verloren." Das stimmt - so allgemein ausgedrückt - m.E. nach nicht. Wenn int z.B. eine long int ist (32-bit), so können zumindest manche Zahlen, die größer als 2^24 sind, nicht genau dargestellt werden, d.h. es kann sehr wohl Genauigleit verloren gehen. Das liegt daran, dass die Mantisse der Float nur mit 23 Bits dargestellt wird. Beispiel: int a= 16777217; float b= a; Dann ist b= 16777218,0 binär kodiert zu 0x4B800001. .--Zebaba 16:35, 7. Jul. 2022 (CEST)Beantworten

Zurück zur Seite „C-Programmierung: Typumwandlung“.