Namensräume
Varianten

std::rint, std::lrint, std::llrint

Aus cppreference.com
< cpp‎ | numeric‎ | math

 
 
Numerik-Bibliothek
Gemeinsame mathematischen Funktionen
Floating-Point-Umgebung
Komplexe Zahlen
Numerische Arrays
Pseudo-Zufallszahlen
Compile-time rationale Arithmetik(C++11)
Generische numerische Operationen
Original:
Generic numeric operations
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
iota(C++11)
accumulate
inner_product
adjacent_difference
partial_sum
 
Gemeinsame mathematischen Funktionen
Funktionen
Original:
Functions
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Grundlegende Bedienung
Original:
Basic operations
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
remainder(C++11)
remquo(C++11)
fma(C++11)
fmax(C++11)
fmin(C++11)
fdim(C++11)
nan
nanf
nanl
(C++11)
(C++11)
(C++11)
Exponentialfunktionen
Original:
Exponential functions
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
exp
exp2(C++11)
expm1(C++11)
log
log10
log1p(C++11)
log2(C++11)
Power-Funktionen
Original:
Power functions
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
sqrt
cbrt(C++11)
hypot(C++11)
pow
Trigonometrische und hyperbolische Funktionen
Original:
Trigonometric and hyperbolic functions
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
sinh
cosh
tanh
asinh(C++11)
acosh(C++11)
atanh(C++11)
Fehler-und Gamma-Funktionen
Original:
Error and gamma functions
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
erf(C++11)
erfc(C++11)
lgamma(C++11)
tgamma(C++11)
Nächste ganze Zahl Fließkomma-Operationen
Original:
Nearest integer floating point operations
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
ceil
floor
round
lround
llround
(C++11)
(C++11)
(C++11)
trunc(C++11)
nearbyint(C++11)
rint
lrint
llrint
(C++11)
(C++11)
(C++11)
Floating-Point-Manipulation Funktionen
Original:
Floating point manipulation functions
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
ldexp
scalbn
scalbln
(C++11)
(C++11)
ilogb(C++11)
logb(C++11)
Klassifizierung / Vergleich
Original:
Classification/Comparison
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
fpclassify(C++11)
isfinite(C++11)
isinf(C++11)
isnan(C++11)
isnormal(C++11)
signbit(C++11)
Makro Konstanten
Original:
Macro constants
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
FP_NORMAL
FP_SUBNORMAL
FP_ZERO
FP_INFINITE
FP_NAN
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
 
definiert in Header <cmath>
int rint(float arg );
(seit C++11)
int rint(double arg );
(seit C++11)
int rint(longdouble arg );
(seit C++11)
int rint( Integral arg );
(seit C++11)
long lrint(float arg );
(seit C++11)
long lrint(double arg );
(seit C++11)
long lrint(longdouble arg );
(seit C++11)
long lrint( Integral arg );
(seit C++11)
longlong llrint(float arg );
(seit C++11)
longlong llrint(double arg );
(seit C++11)
longlong llrint(longdouble arg );
(seit C++11)
longlong llrint( Integral arg );
(seit C++11)
Rundet die Floating-Point-Argument arg auf einen ganzzahligen Wert in Floating-Point-Format, mit dem aktuellen Rundung Modus. Wenn das Ergebnis unterscheidet sich von arg (dh arg war kein ganzzahliger Wert schon), wird die Gleitkomma-Ausnahme FE_INEXACT angehoben .
Original:
Rounds the floating-point argument arg to an integer value in floating-point format, using the current rounding mode. If the result differs from arg (i.e., arg was not an integer value already), the floating-point exception FE_INEXACT is raised.
The text has been machine-translated via Google Translate.
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.

[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.

[Bearbeiten]Beispiel

#include <cmath>#include <cfenv>#include <iostream>int main(){#pragma STDC FENV_ACCESS ONstd::fesetround(FE_DOWNWARD);std::cout<<"rounding using FE_DOWNWARD:\n"<<std::fixed<<" 12.0 -> "<< std::rint(12.0)<<'\n'<<" 12.1 -> "<< std::rint(12.1)<<'\n'<<"-12.1 -> "<< std::rint(-12.1)<<'\n'<<" 12.5 -> "<< std::rint(12.5)<<'\n'<<" 12.9 -> "<< std::rint(12.9)<<'\n'<<"-12.9 -> "<< std::rint(-12.9)<<'\n'<<" 13.0 -> "<< std::rint(13.0)<<'\n';std::fesetround(FE_TONEAREST);std::cout<<"rounding using FE_TONEAREST: \n"<<" 12.0 -> "<< std::rint(12.0)<<'\n'<<" 12.1 -> "<< std::rint(12.1)<<'\n'<<"-12.1 -> "<< std::rint(-12.1)<<'\n'<<" 12.5 -> "<< std::rint(12.5)<<'\n'<<" 12.9 -> "<< std::rint(12.9)<<'\n'<<"-12.9 -> "<< std::rint(-12.9)<<'\n'<<" 13.0 -> "<< std::rint(13.0)<<'\n';   std::cout<<"When rounding 12.0 ";std::feclearexcept(FE_ALL_EXCEPT); std::rint(12.0);if(std::fetestexcept(FE_ALL_EXCEPT)&FE_INEXACT){std::cout<<"inexact result reported\n";}else{std::cout<<"inexact result not reported\n";}   std::cout<<"When rounding 12.1 "; std::rint(12.1);if(std::fetestexcept(FE_ALL_EXCEPT)&FE_INEXACT){std::cout<<"inexact result reported\n";}else{std::cout<<"inexact result not reported\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 When rounding 12.0 inexact result not reported When rounding 12.1 inexact result reported

[Bearbeiten]Siehe auch

(C++11)
nächste ganze Zahl mit aktuellen Rundung Modus
Original:
nearest integer using 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.

(Funktion)[edit]
(C++11)
nächste Ganzzahl nicht betragsmäßig größer als der gegebene Wert
Original:
nearest integer not greater in magnitude than the given value
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

(Funktion)[edit]
(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)[edit]
close