PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [C#] Wann braucht man jetzt "F" als float Suffix?


Gast
2008-11-19, 13:05:48
Hallo ihr,

bisher habe ich aus Gemütlichkeit immer double benutzt, weil man dabei ja nichts weiter beachten muss. Die Genauigkeit brauche ich aber garnicht, woltle deshalb float benutzen. Was ich bei float nicht genau kapiere: wann muss ich das Suffix "F" anhängen?

Klarer Fall:

float zahl = 12345.1745F;

Wie ist das aber bei

float zahl = (langer Term mit Brüchen etc)

Muss hier an jede Zahl das F, oder hinter die alles umschließende Klammer ein F, oder garkein F?


Sobald die Zahl aber mal im Ram ist und ich mit dem Variablennamen auf sie zugreifen kann, ist das F aber Geschichte?

Was muss man sonst noch beachten?


danke

gr@fz@hL
2008-11-19, 13:31:06
Erstmal als Grundlage: http://msdn.microsoft.com/de-de/library/b1e65aza(VS.80).aspx

In einem Term muß meines Wissens nach jede Floatzahl mit dem Suffix F gekennzeichnet werden, ansonsten ist das Ergebnis ein double.

Gast
2008-11-19, 13:49:26
ich würde eher so überlegen: brauch ich den speicherplatz, der frei wird indem ich float statt double nehme? wohl eher nicht, sonst würd ich nicht in C# proggen.
nimm double ;)

an.zgep

Gnafoo
2008-11-20, 08:40:34
Solange du nicht gerade irgendwelche Engstellen optimieren musst kannst du ruhig beim Double bleiben. Ansonsten gilt: eine Zahl 1.0 ist double, eine Zahl 1.0f ist float. Wenn du einen Ausdruck hast, in dem beides vorkommt, z. B. 1.0/2.0f, dann ist das Ergebnis ein double, um der höheren Genauigkeit des 1.0 Sorge zu tragen.

D. h. in zusammengesetzten Ausdrücken musst du alles auf float casten bzw. das Suffix -f verwenden, sonst wird intern wieder mit double gerechnet und du musst das Ergebnis am Ende wieder auf float casten.