nextafter(3) Library Functions Manual nextafter(3)

nextafter, nextafterf, nextafterl, nexttoward, nexttowardf, nexttowardl - manipularea numerelor în virgulă mobilă

Biblioteca de matematică (libm, -lm)

#include <math.h>
double nextafter(double x, double y);
float nextafterf(float x, float y);
long double nextafterl(long double x, long double y);
double nexttoward(double x, long double y);
float nexttowardf(float x, long double y);
long double nexttowardl(long double x, long double y);
Cerințe pentru macrocomenzi de testare a caracteristicilor pentru glibc (consultați feature_test_macros(7)):

nextafter():

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

nextafterf(), nextafterl():

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

nexttoward(), nexttowardf(), nexttowardl():

    _XOPEN_SOURCE >= 600 || _ISOC99_SOURCE
        || _POSIX_C_SOURCE >= 200112L

Funcțiile nextafter(), nextafterf() și nextafterl() returnează următoarea valoare reprezentabilă în virgulă mobilă care urmează după x în direcția y. Dacă y este mai mică decât x, aceste funcții vor returna cel mai mare număr reprezentabil mai mic decât x.

Dacă x este egal cu y, funcțiile returnează y.

Funcțiile nexttoward(), nexttowardf() și nexttowardl() au aceeași acțiune ca și funcțiile corespunzătoare nextafter(), cu excepția faptului că au un al doilea argument long double.

În caz de succes, aceste funcții returnează următoarea valoare reprezentabilă în virgulă mobilă după x în direcția y.

Dacă x este egal cu y, atunci se returnează y (transformat în același tip ca și x).

Dacă x sau y nu este un număr („Not a Number”: NaN), se returnează un NaN.

În cazul în care x este finit, iar rezultatul ar depăși limitele, apare o eroare de interval, iar funcțiile returnează HUGE_VAL, HUGE_VALF sau respectiv, HUGE_VALL, cu semnul matematic corect.

Dacă x nu este egal cu y, iar rezultatul corect al funcției ar fi subnormal, zero sau sub-limită, apare o eroare de interval și se returnează fie valoarea corectă (dacă poate fi reprezentată), fie 0,0.

ERORI-IEȘIRE

Consultați math_error(7) pentru informații despre cum să determinați dacă a apărut o eroare la apelarea acestor funcții.

Pot apărea următoarele erori:

errno este configurată la ERANGE. Se generează o excepție de depășire în virgulă mobilă (FE_OVERFLOW).
errno este configurată la ERANGE. Se generează o excepție de sub-limită în virgulă mobilă (FE_UNDERFLOW).

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

Interfață Atribut Valoare
nextafter(), nextafterf(), nextafterl(), nexttoward(), nexttowardf(), nexttowardl() Siguranța firelor MT-Safe

C11, POSIX.1-2008.

Această funcție este definită în IEC 559 (și în apendicele cu funcțiile recomandate din IEEE 754/IEEE 854).

C99, POSIX.1-2001.

În glibc 2.5 și versiunile anterioare, aceste funcții nu generează o excepție de deficiență în virgulă mobilă (FE_UNDERFLOW) atunci când se produce o deficiență.

Înainte de glibc 2.23, aceste funcții nu configurau errno.

nearbyint(3)

Traducerea în limba română a acestui manual a fost făcută 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.

2 mai 2024 Pagini de manual de Linux 6.8