rint(3) Library Functions Manual rint(3)

nearbyint, nearbyintf, nearbyintl, nearbyintl, rint, rintf, rintl - rotunjesc la cel mai apropiat număr întreg

Biblioteca de matematică (libm, -lm)

#include <math.h>
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);
Cerințe pentru macrocomenzi de testare a caracteristicilor pentru glibc (consultați feature_test_macros(7)):

nearbyint(), nearbyintf(), nearbyintl():


_POSIX_C_SOURCE >= 200112L || _ISOC99_SOURCE

rint():


_ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
|| _XOPEN_SOURCE >= 500
|| /* Începând cu glibc 2.19: */ _DEFAULT_SOURCE
|| /* glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE

rintf(), rintl():


_ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
|| /* Începând cu glibc 2.19: */ _DEFAULT_SOURCE
|| /* glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE

Funcțiile nearbyint(), nearbyintf() și nearbyintl() își rotunjesc argumentul la o valoare întreagă în format cu virgulă mobilă, utilizând direcția de rotunjire curentă (a se vedea fesetround(3)) și fără a ridica excepția inexact. Atunci când direcția de rotunjire curentă este la cel mai apropiat, aceste funcții rotunjesc cazurile la jumătate de drum (valoare) la un număr întreg par, în conformitate cu IEEE-754.

Funcțiile rint(), rintf() și rintl() fac același lucru, dar vor ridica excepția inexact (FE_INEXACT, verificabilă prin fetestexcept(3)) atunci când valoarea rezultatului diferă de cea a argumentului.

Aceste funcții returnează valoarea întreagă rotunjită.

Dacă x este un număr întreg, +0, -0, NaN (nu este un număr) sau infinit, se returnează x însuși.

Nu există erori. POSIX.1-2001 documentează o eroare de interval pentru depășiri, dar a se vedea NOTE.

Pentru o explicație a termenilor folosiți în această secțiune, a se vedea attributes(7).

Interfață Atribut Valoare
nearbyint(), nearbyintf(), nearbyintl(), rint(), rintf(), rintl() Siguranța firelor MT-Safe

C11, POSIX.1-2008.

C99, POSIX.1-2001.

SUSv2 și POSIX.1-2001 conțin un text despre depășire (care ar putea configura errno la ERANGE sau ridica o excepție FE_OVERFLOW). În practică, rezultatul nu poate depăși limitarea pe nicio mașină curentă, astfel încât această chestie de tratare a erorilor este doar un nonsens. Mai precis, depășirea poate avea loc numai atunci când valoarea maximă a exponentului este mai mică decât numărul de biți de mantisă (partea zecimală pozitivă a unui logaritm). Pentru numerele cu virgulă mobilă standard IEEE-754 pe 32 și 64 de biți, valoarea maximă a exponentului este 127 (respectiv, 1023), iar numărul de biți de mantisă, inclusiv bitul implicit, este 24 (respectiv, 53).

Dacă doriți să stocați valoarea rotunjită într-un tip întreg, probabil că doriți să utilizați în schimb una dintre funcțiile descrise în lrint(3).

ceil(3), floor(3), lrint(3), round(3), trunc(3)

Traducerea în limba română a acestui manual a fost creată de Remus-Gabriel Chelu <remusgabriel.chelu@disroot.org>

Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3 sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă Nicio RESPONSABILITATE.

Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la translation-team-ro@lists.sourceforge.net.

20 iulie 2023 Pagini de manual de Linux 6.05.01