rint(3) Library Functions Manual rint(3) nearbyint, nearbyintf, nearbyintl, rint, rintf, rintl - LIBRARY Math library (libm, -lm) #include double nearbyint(double x); float nearbyintf(float x); long double nearbyintl(long double x); double rint(double x); float rintf(float x); long double rintl(long double x); glibc (. feature_test_macros(7)): nearbyint(), nearbyintf(), nearbyintl(): _POSIX_C_SOURCE >= 200112L || _ISOC99_SOURCE rint(): _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 500 || /* glibc 2.19: */ _DEFAULT_SOURCE || /* glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE rintf(), rintl(): _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L || /* glibc 2.19: */ _DEFAULT_SOURCE || /* Glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE nearbyint(), nearbyintf() nearbyintl() ( fesetround(3)) . , , IEEE-754. rint(), rintf() rintl() , (FE_INEXACT, fetestexcept(3)), . . x , +0, -0, NaN , x. . POSIX.1-2001 , . attributes(7). +----------------------------+----------------------------------------------------------+--------------------------+ | | | | +----------------------------+----------------------------------------------------------+--------------------------+ |nearbyint(), nearbyintf(), | | MT-Safe | |nearbyintl(), rint(), | | | |rintf(), rintl() | | | +----------------------------+----------------------------------------------------------+--------------------------+ C11, POSIX.1-2008. C99, POSIX.1-2001. SUSv2 and POSIX.1-2001 contain 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).) , , lrint(3). ceil(3), floor(3), lrint(3), round(3), trunc(3) aereiae , Azamat Hackimov , Dmitriy S. Seregin , Katrin Kutepova , Lockal , Yuri Kozlov , ; GNU (GNU General Public License - GPL, 3 ) , - . - , , <>. Linux man-pages 6.8 2 2024 . rint(3)