From 82ba818ff456bcd6d56a06226e3f27e98fbb55c3 Mon Sep 17 00:00:00 2001 From: Craig Jennings Date: Thu, 14 Aug 2025 22:58:58 -0500 Subject: removing all downloaded devdocs files --- devdocs/c/numeric%2Fmath%2Fround.html | 124 ---------------------------------- 1 file changed, 124 deletions(-) delete mode 100644 devdocs/c/numeric%2Fmath%2Fround.html (limited to 'devdocs/c/numeric%2Fmath%2Fround.html') diff --git a/devdocs/c/numeric%2Fmath%2Fround.html b/devdocs/c/numeric%2Fmath%2Fround.html deleted file mode 100644 index 119c6750..00000000 --- a/devdocs/c/numeric%2Fmath%2Fround.html +++ /dev/null @@ -1,124 +0,0 @@ -

round, roundf, roundl, lround, lroundf, lroundl, llround, llroundf, llroundl

Defined in header <math.h>
float       roundf( float arg );
-
(1) (since C99)
double      round( double arg );
-
(2) (since C99)
long double roundl( long double arg );
-
(3) (since C99)
Defined in header <tgmath.h>
#define round( arg )
-
(4) (since C99)
Defined in header <math.h>
long      lroundf( float arg );
-
(5) (since C99)
long      lround( double arg );
-
(6) (since C99)
long      lroundl( long double arg );
-
(7) (since C99)
Defined in header <tgmath.h>
#define lround( arg )
-
(8) (since C99)
Defined in header <math.h>
long long llroundf( float arg );
-
(9) (since C99)
long long llround( double arg );
-
(10) (since C99)
long long llroundl( long double arg );
-
(11) (since C99)
Defined in header <tgmath.h>
#define llround( arg )
-
(12) (since C99)
-1-3) Computes the nearest integer value to arg (in floating-point format), rounding halfway cases away from zero, regardless of the current rounding mode.
-5-7, 9-11) Computes the nearest integer value to arg (in integer format), rounding halfway cases away from zero, regardless of the current rounding mode.
-4,8,12) Type-generic macros: If arg has type long double, roundl, lroundl, llroundl is called. Otherwise, if arg has integer type or the type double, round, lround, llround is called. Otherwise, roundf, lroundf, llroundf is called, respectively.

Parameters

- -
arg - floating point value

Return value

If no errors occur, the nearest integer value to arg, rounding halfway cases away from zero, is returned.

-
Return value
math-round away zero.svg
Argument

If a domain error occurs, an implementation-defined value is returned.

-

Error handling

Errors are reported as specified in math_errhandling.

-

If the result of lround or llround is outside the range representable by the return type, a domain error or a range error may occur.

-

If the implementation supports IEEE floating-point arithmetic (IEC 60559), For the round, roundf, and roundl function:

- For lround and llround families of functions:

Notes

FE_INEXACT may be (but isn't required to be) raised by round when rounding a non-integer finite value.

-

The largest representable floating-point values are exact integers in all standard floating-point formats, so round never overflows on its own; however the result may overflow any integer type (including intmax_t), when stored in an integer variable.

-

POSIX specifies that all cases where lround or llround raise FE_INVALID are domain errors.

-

The double version of round behaves as if implemented as follows:

-
#include <math.h>
-double round(double x)
-{
-    return signbit(x) ? ceil(x - 0.5) : floor(x + 0.5);
-}

Example

#include <stdio.h>
-#include <math.h>
-#include <fenv.h>
-#include <limits.h>
- 
-// #pragma STDC FENV_ACCESS ON
- 
-int main(void)
-{
-    // round
-    printf("round(+2.3) = %+.1f  ", round(2.3));
-    printf("round(+2.5) = %+.1f  ", round(2.5));
-    printf("round(+2.7) = %+.1f\n", round(2.7));
-    printf("round(-2.3) = %+.1f  ", round(-2.3));
-    printf("round(-2.5) = %+.1f  ", round(-2.5));
-    printf("round(-2.7) = %+.1f\n", round(-2.7));
- 
-    printf("round(-0.0) = %+.1f\n", round(-0.0));
-    printf("round(-Inf) = %+f\n",   round(-INFINITY));
- 
-    // lround
-    printf("lround(+2.3) = %ld  ", lround(2.3));
-    printf("lround(+2.5) = %ld  ", lround(2.5));
-    printf("lround(+2.7) = %ld\n", lround(2.7));
-    printf("lround(-2.3) = %ld  ", lround(-2.3));
-    printf("lround(-2.5) = %ld  ", lround(-2.5));
-    printf("lround(-2.7) = %ld\n", lround(-2.7));
- 
-    printf("lround(-0.0) = %ld\n", lround(-0.0));
-    printf("lround(-Inf) = %ld\n", lround(-INFINITY)); // FE_INVALID raised
- 
-    // error handling
-    feclearexcept(FE_ALL_EXCEPT);
-    printf("lround(LONG_MAX+1.5) = %ld\n", lround(LONG_MAX+1.5));
-    if(fetestexcept(FE_INVALID)) puts("    FE_INVALID was raised");
-}

Possible output:

-
round(+2.3) = +2.0  round(+2.5) = +3.0  round(+2.7) = +3.0
-round(-2.3) = -2.0  round(-2.5) = -3.0  round(-2.7) = -3.0
-round(-0.0) = -0.0
-round(-Inf) = -inf
-lround(+2.3) = 2  lround(+2.5) = 3  lround(+2.7) = 3
-lround(-2.3) = -2  lround(-2.5) = -3  lround(-2.7) = -3
-lround(-0.0) = 0
-lround(-Inf) = -9223372036854775808
-lround(LONG_MAX+1.5) = -9223372036854775808
-    FE_INVALID was raised

References

See also

- - - -
-
(C99)(C99)
computes largest integer not greater than the given value
(function)
-
(C99)(C99)
computes smallest integer not less than the given value
(function)
-
(C99)(C99)(C99)
rounds to nearest integer not greater in magnitude than the given value
(function)
C++ documentation for round
-

- © cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
- https://en.cppreference.com/w/c/numeric/math/round -

-
-- cgit v1.2.3