std::nearbyint
Aus cppreference.com
![]() |
This page has been machine-translated from the English version of the wiki using Google Translate.
The translation may contain errors and awkward wording. Hover over text to see the original version. You can help to fix errors and improve the translation. For instructions click here. |
definiert in Header <cmath>
|
||
float nearbyint( float arg ); |
(seit C++11) | |
double nearbyint( double arg ); |
(seit C++11) | |
long double nearbyint( long double arg ); |
(seit C++11) | |
double nearbyint( Integral arg ); |
(seit C++11) | |
Rundet die Floating-Point-Argument
arg
auf einen ganzzahligen Wert in Floating-Point-Format, mit dem aktuellen Rundungsmodus .Original:
Rounds the floating-point argument
arg
to an integer value in floating-point format, using the current rounding mode.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Inhaltsverzeichnis |
[Bearbeiten] Parameter
arg | - | Floating-Point-Wert
Original: floating point value The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
[Bearbeiten] Rückgabewert
Das ganzzahlige Ergebnis der Rundung
arg
Original:
The integer result of rounding
arg
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
[Bearbeiten] Notes
Der einzige Unterschied zwischen std::nearbyint und std::rint ist, dass std::rint kann die FE_INEXACT Gleitkomma-Ausnahme zu erhöhen, während std::nearbyint wirft es nie .
Original:
The only difference between std::nearbyint and std::rint is that std::rint may raise the FE_INEXACT floating-point exception, while std::nearbyint never raises it.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
[Bearbeiten] Beispiel
#include <cmath> #include <cfenv> #include <iostream> int main() { #pragma STDC FENV_ACCESS ON std::fesetround(FE_DOWNWARD); std::cout << "rounding using FE_DOWNWARD: \n" << std::fixed << " 12.0 -> " << std::nearbyint(12.0) << '\n' << " 12.1 -> " << std::nearbyint(12.1) << '\n' << "-12.1 -> " << std::nearbyint(-12.1) << '\n' << " 12.5 -> " << std::nearbyint(12.5) << '\n' << " 12.9 -> " << std::nearbyint(12.9) << '\n' << "-12.9 -> " << std::nearbyint(-12.9) << '\n' << " 13.0 -> " << std::nearbyint(13.0) << '\n'; std::fesetround(FE_TONEAREST); std::cout << "rounding using FE_TONEAREST: \n" << " 12.0 -> " << std::nearbyint(12.0) << '\n' << " 12.1 -> " << std::nearbyint(12.1) << '\n' << "-12.1 -> " << std::nearbyint(-12.1) << '\n' << " 12.5 -> " << std::nearbyint(12.5) << '\n' << " 12.9 -> " << std::nearbyint(12.9) << '\n' << "-12.9 -> " << std::nearbyint(-12.9) << '\n' << " 13.0 -> " << std::nearbyint(13.0) << '\n'; }
Output:
rounding using FE_DOWNWARD: 12.0 -> 12.000000 12.1 -> 12.000000 -12.1 -> -13.000000 12.5 -> 12.000000 12.9 -> 12.000000 -12.9 -> -13.000000 13.0 -> 13.000000 rounding using FE_TONEAREST: 12.0 -> 12.000000 12.1 -> 12.000000 -12.1 -> -12.000000 12.5 -> 12.000000 12.9 -> 13.000000 -12.9 -> -13.000000 13.0 -> 13.000000
[Bearbeiten] Siehe auch
(C++11) (C++11) (C++11) |
nächste ganze Zahl mit aktuellen Rundung Modus mit Ausnahme, wenn das Ergebnis unterscheidet Original: nearest integer using current rounding mode with exception if the result differs The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (Funktion) |
(C++11) (C++11) (C++11) |
nächste ganze Zahl, Rundung von Null weg in halbwegs Fällen Original: nearest integer, rounding away from zero in halfway cases The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (Funktion) |
(C++11) (C++11) |
ab oder legt Rundung Richtung Original: gets or sets rounding direction The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (Funktion) |