round(3) Library Functions Manual round(3) round, roundf, roundl - LIBRARY Math library (libm, -lm) #include double round(double x); float roundf(float x); long double roundl(long double x); glibc (. feature_test_macros(7)): round(), roundf(), roundl(): _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L x , ( , fenv(3)), , rint(3). , round(0.5) 1.0, round(-0.5) -1.0. . x , +0, -0, NaN , x. . POSIX.1-2001 , . attributes(7). +----------------------------+----------------------------------------------------------+--------------------------+ | | | | +----------------------------+----------------------------------------------------------+--------------------------+ |round(), roundf(), roundl() | | MT-Safe | +----------------------------+----------------------------------------------------------+--------------------------+ C11, POSIX.1-2008. glibc 2.1. C99, POSIX.1-2001. POSIX.1-2001 contains text about overflow (which might set errno to ERANGE, or raise an FE_OVERFLOW exception). In practice, the result cannot overflow on any current machine, so this error-handling stuff is just nonsense. (More precisely, overflow can happen only when the maximum value of the exponent is smaller than the number of mantissa bits. For the IEEE-754 standard 32-bit and 64-bit floating-point numbers the maximum value of the exponent is 127 (respectively, 1023), and the number of mantissa bits including the implicit bit is 24 (respectively, 53).) , , lround(3). . ceil(3), floor(3), lround(3), nearbyint(3), rint(3), trunc(3) aereiae , Azamat Hackimov , Dmitriy S. Seregin , Katrin Kutepova , Lockal , Yuri Kozlov , ; GNU 3 , . . , , . Linux man-pages 6.06 31 2023 . round(3)