Rounds numbers to an integer value in floating-point format.
#include <math.h> double nearbyint (x) double x; float nearbyintf (x) float x; long double nearbyintl (x) long double x;
The nearbyint, nearbyintf, and nearbyintl subroutines round the x parameter to an integer value in floating-point format, using the current rounding direction and without raising the inexact floating-point exception.
An application wishing to check for error situations should set the errno global variable to zero and call feclearexcept(FE_ALL_EXCEPT) before calling these subroutines. Upon return, if errno is nonzero or fetestexcept(FE_INVALID | FE_DIVBYZERO | FE_OVERFLOW | FE_UNDERFLOW) is nonzero, an error has occurred.
x | Specifies the value to be computed. |
Upon successful completion, the nearbyint, nearbyintf, and nearbyintl subroutines return the rounded integer value.
If x is NaN, a NaN is returned.
If x is ±0, ±0 is returned.
If x is ±Inf, x is returned.
If the correct value would cause overflow, a range error occurs and the nearbyint, nearbyintf, and nearbyintl subroutines return the value of the macro ±HUGE_VAL, ±HUGE_VALF, and ±HUGE_VALL (with the same sign as x), respectively.
feclearexcept Subroutine and fetestexcept Subroutine.
math.h in AIX 5L Version 5.2 Files Reference.