float



  • Hallo zusammen!

    Ich hab kurz folgende Frage:

    float volume;
        ...
        if( volume >= 0.0f )
        {  
            ...
        }
    

    Ich habe dieses "f" bei 0.0f bis vor kurzem noch nie gesehen, dann in einem Buch. Mein Compiler bringt keinen Fehler und das Programm funktioniert einwandfrei kann man dieses "f" da immer hinschreiben? Kann ich jetzt z.B. auch schreiben

    int zahl = 2i;
    

    😕
    Danke für Hilfe

    Grüße



  • Müllfanatiker schrieb:

    Kann ich jetzt z.B. auch schreiben

    int zahl = 2i;
    

    nein.

    double d = 5.1; // double mit double initialisieren
    float f = 5.1;  // float mit double initialisieren (cast)
    float g = 5.1f; // float mit float initialisieren
    

    mfg



  • Noch ein Tipp von mir. Die if Bedingungen mit Gleitkommazahlen sind inexakt es kommen ja immer kleine Rundungsfehler vor... Sollen schon Raketen wegen solchen Abragen abgestürzt sein..



  • dali schrieb:

    Noch ein Tipp von mir. Die if Bedingungen mit Gleitkommazahlen sind inexakt es kommen ja immer kleine Rundungsfehler vor...

    Wobei das idR nur beim Testen auf Gleichheit bzw. Ungleichheit relevant ist. Spielt hier deshalb keine Rolle.


Anmelden zum Antworten