manpagez: man pages & more
man round(3)
Home | html | info | man
round(3)                 BSD Library Functions Manual                 round(3)


NAME

     round, lround, llround -- round to integral value, regardless of rounding
     direction


SYNOPSIS

     #include <math.h>

     double
     round(double x);

     long double
     roundl(long double x);

     float
     roundf(float x);

     long int
     lround(double x);

     long int
     lroundl(long double x);

     long int
     lroundf(float x);

     long long int
     llround(double x);

     long long int
     llroundl(long double x);

     long long int
     llroundf(float x);


DESCRIPTION

     The round() functions return the integral value nearest to x rounding
     half-way cases away from zero, regardless of the current rounding direc-
     tion.

     The lround() and llround() functions return the integral value nearest to
     x (rounding half-way cases away from zero, regardless of the current
     rounding direction) in the return formats specified.  If the rounded
     value is outside the range of the return type, the numeric result is
     unspecified and the "invalid" floating-point exception is raised. A range
     error may occur if the magnitude of x is too large.


SPECIAL VALUES

     round(+-0) returns +-0.

     round(+-infinity) returns +-infinity.

     The round() functions may, but are not required to, raise the "inexact"
     floating-point exception for non-integer numeric arguments.

     The lround() and llround() functions need not raise the "inexact" float-
     ing-point exception for non-integer arguments that round to within the
     range of the return type.


NOTE

     The roundtol() function is deprecated.  Please use the C99 function
     lround() instead.


VECTOR OPERATIONS

     If you need to apply the round() function to SIMD vectors or arrays,
     using the following functions provided by the Accelerate.framework may
     give significantly better performance:

     #include <Accelerate/Accelerate.h>

     vFloat vnintf(vFloat x);
     void vvnintf(float *y, const float *x, const int *n);
     void vvnint(double *y, const double *x, const int *n);


SEE ALSO

     ceil(3), floor(3), trunc(3), math(3)


STANDARDS

     The round() , lround() , and llround() functions conform to ISO/IEC
     9899:2011.

BSD                              July 02, 2008                             BSD

Mac OS X 10.9.1 - Generated Thu Jan 9 06:06:33 CST 2014
© manpagez.com 2000-2024
Individual documents may contain additional copyright information.