Wann und wo sollte ich ' std :: nearint ' over the std :: round?


Beste Antwort

std :: nearint : Rundet das Floating -Punktargument arg auf einen ganzzahligen Wert im Gleitkommaformat unter Verwendung des aktuellen Rundungsmodus .

std :: round : Berechnet den nächsten ganzzahligen Wert zu arg (im Gleitkommaformat) , unabhängig vom aktuellen Rundungsmodus halbe Fälle von Null abzurunden.

Es gibt also den Unterschied. Wenn Sie einen anderen Rundungsmodus als den von std :: round verwendeten verwenden möchten, verwenden Sie std :: nearint (oder std :: rint , sie sind fast identisch). .

Beachten Sie, dass es auch bei Auswahl von FE\_TONEAREST einen Unterschied gibt: std :: nearint / std :: rint rundet die Fälle auf die Hälfte auf gerade, während std :: von Null weg rundet.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.