Betrachten wir den folgenden Code:Korrekte Initialisierung eines Double mit einem Bruchteil?
double foo;
foo = 1/35;
Will foo
dann gleich 0.02857142857
(etwa 1/35 als dezimal) oder 0
(Integer-Division)? Ist dieser Code portierbar, mit anderen Worten, ist es ein definiertes, garantiertes Verhalten, das bei der Zuweisung von etwas wie 1/35 zu einem Double eine Gleitkommadivision durchführt?
es wird eine Null als ganze Zahl produzieren ... Sie Ints und denom sind Dividieren biiger als Zähler –
„Wird dann gleich foo ...“ Kannst du nicht das testen? – juanchopanza
Das Ergebnis ist 0. Sie müssen einen der Operanden zum Verdoppeln umwandeln. –