Provided by: manpages-posix-dev_2.16-1_all bug

NAME

       rint, rintf, rintl - round-to-nearest integral value

SYNOPSIS

       #include <math.h>

       double rint(double x);
       float rintf(float x);
       long double rintl(long double x);

DESCRIPTION

       These  functions  shall return the integral value (represented as a double) nearest x in the direction of
       the current rounding mode. The current rounding mode is implementation-defined.

       If the current rounding mode rounds toward negative infinity, then rint() shall be equivalent to  floor()
       . If the current rounding mode rounds toward positive infinity, then rint() shall be equivalent to ceil()
       .

       These functions differ from the nearbyint(), nearbyintf(), and nearbyintl() functions only in  that  they
       may raise the inexact floating-point exception if the result differs in value from the argument.

       An   application   wishing   to   check   for  error  situations  should  set  errno  to  zero  and  call
       feclearexcept(FE_ALL_EXCEPT) before calling  these  functions.   On  return,  if  errno  is  non-zero  or
       fetestexcept(FE_INVALID | FE_DIVBYZERO | FE_OVERFLOW | FE_UNDERFLOW) is non-zero, an error has occurred.

RETURN VALUE

       Upon  successful  completion, these functions shall return the integer (represented as a double precision
       number) nearest x in the direction of the current rounding mode.

       If x is NaN, a NaN shall be returned.

       If x is ±0 or ±Inf, x shall be returned.

       If the correct value would cause overflow, a range error shall occur and  rint(),  rintf(),  and  rintl()
       shall  return  the  value  of  the macro ±HUGE_VAL, ±HUGE_VALF, and ±HUGE_VALL (with the same sign as x),
       respectively.

ERRORS

       These functions shall fail if:

       Range Error
              The result would cause an overflow.

       If the integer expression (math_errhandling & MATH_ERRNO)  is  non-zero,  then  errno  shall  be  set  to
       [ERANGE].  If  the  integer expression (math_errhandling & MATH_ERREXCEPT) is non-zero, then the overflow
       floating-point exception shall be raised.

       The following sections are informative.

EXAMPLES

       None.

APPLICATION USAGE

       On error, the expressions (math_errhandling & MATH_ERRNO) and  (math_errhandling  &  MATH_ERREXCEPT)  are
       independent of each other, but at least one of them must be non-zero.

RATIONALE

       None.

FUTURE DIRECTIONS

       None.

SEE ALSO

       abs()  ,  ceil()  ,  feclearexcept()  ,  fetestexcept()  ,  floor()  ,  isnan()  , nearbyint() , the Base
       Definitions volume of IEEE Std 1003.1-2001, Section 4.18, Treatment of Error Conditions for  Mathematical
       Functions, <math.h>

COPYRIGHT

       Portions of this text are reprinted and reproduced in electronic form from IEEE Std 1003.1, 2003 Edition,
       Standard for Information Technology -- Portable Operating System Interface (POSIX), The Open  Group  Base
       Specifications Issue 6, Copyright (C) 2001-2003 by the Institute of Electrical and Electronics Engineers,
       Inc and The Open Group. In the event of any discrepancy between this version and the  original  IEEE  and
       The  Open  Group  Standard,  the  original  IEEE and The Open Group Standard is the referee document. The
       original Standard can be obtained online at http://www.opengroup.org/unix/online.html .