C++官网参考链接:https://cplusplus.com/reference/cmath/nearbyint/
函数
<cmath>
nearbyint
C99
double nearbyint(double x);
float nearbyintf(float x);
long double nearbyintl(long double x);
C++11
double nearbyint(double x);
float nearbyint(float x);
long double nearbyint(long double x);
double nearbyint(T x); // additional overloads for integral types
舍入到附近的整数值
使用fegetround指定的舍入方向将x舍入到一个整数值。
这个函数不会引发FE_INEXACT异常。请参阅rint可能做相同任务的等价函数。
C99
头文件
C++11
在此头文件(
形参
x
将要舍入的值。
返回值
x的值舍入到附近的整数(作为一个浮点值)。
用例
/* nearbyint example */
#include
#include
#include
int main ()
{
printf ("rounding using ");
switch (fegetround()) {
case FE_DOWNWARD: printf ("downward"); break;
case FE_TONEAREST: printf ("to-nearest"); break;
case FE_TOWARDZERO: printf ("toward-zero"); break;
case FE_UPWARD: printf ("upward"); break;
default: printf ("unknown");
}
printf (" rounding:\n");
printf ( "nearbyint (2.3) = %.1f\n", nearbyint(2.3) );
printf ( "nearbyint (3.8) = %.1f\n", nearbyint(3.8) );
printf ( "nearbyint (-2.3) = %.1f\n", nearbyint(-2.3) );
printf ( "nearbyint (-3.8) = %.1f\n", nearbyint(-3.8) );
return 0;
}
输出:
