finite, finitef, finitel, isinf, isinff, isinfl, isnan, isnanf, isnanl - funkcje
BSD do klasyfikacji liczb zmiennoprzecinkowych
Math library (
libm,
-lm)
#include <math.h>
int finite(double x);
int finitef(float x);
int finitel(long double x);
int isinf(double x);
int isinff(float x);
int isinfl(long double x);
int isnan(double x);
int isnanf(float x);
int isnanl(long double x);
finite(),
finitef(),
finitel():
/* glibc >= 2.19: */ _DEFAULT_SOURCE
|| /* glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE
isinf():
_XOPEN_SOURCE >= 600 || _ISOC99_SOURCE
|| /* glibc >= 2.19: */ _DEFAULT_SOURCE
|| /* glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE
isinff(),
isinfl():
/* glibc >= 2.19: */ _DEFAULT_SOURCE
|| /* glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE
isnan():
_XOPEN_SOURCE || _ISOC99_SOURCE
|| /* glibc >= 2.19: */ _DEFAULT_SOURCE
|| /* glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE
isnanf(),
isnanl():
_XOPEN_SOURCE >= 600
|| /* glibc >= 2.19: */ _DEFAULT_SOURCE
|| /* glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE
Funkcje
finite(),
finitef() oraz
finitel() zwracają
wartość niezerową, gdy
x nie jest ani
nieskończonością, ani wartością "nie
jest liczbą" (NaN). W pozostałych przypadkach
zwracają 0.
Funkcje
isnan(),
isnanf() oraz
isnanl() zwracają
wartość niezerową, gdy
x ma wartość
"nie jest liczbą" (NaN), a 0 w pozostałych
przypadkach.
Funkcje
isinf(),
isinff() oraz
isinfl() zwracają -1,
gdy
x reprezentuje ujemną nieskończoność,
1, gdy
x reprezentuje dodatnią
nieskończoność, a 0 w pozostałych przypadkach.
Informacje o pojęciach używanych w tym rozdziale można
znaleźć w podręczniku
attributes(7).
Interfejs |
Atrybut |
Wartość |
finite(), finitef(), finitel(), isinf(),
isinff(), isinfl(), isnan(), isnanf(),
isnanl() |
Bezpieczeństwo wątkowe |
MT-Safe |
Proszę zauważyć, że te funkcje są
przestarzałe. Standard C99 definiuje zastępujące je makra
isfinite(),
isinf() oraz
isnan() (dla wszystkich
typów). Należy również zwrócić
uwagę na to, że
isinf() z C99 daje słabsze
gwarancje wartości zwracanej. Patrz
fpclassify(3).
fpclassify(3)
Autorami polskiego tłumaczenia niniejszej strony podręcznika
są: Andrzej Krzysztofowicz <
[email protected]>, Robert
Luberda <
[email protected]> i Michał Kułach
<
[email protected]>
Niniejsze tłumaczenie jest wolną dokumentacją.
Bliższe informacje o warunkach licencji można uzyskać
zapoznając się z
GNU
General Public License w wersji 3 lub nowszej. Nie przyjmuje się
ŻADNEJ ODPOWIEDZIALNOŚCI.
Błędy w tłumaczeniu strony podręcznika prosimy
zgłaszać na adres listy dyskusyjnej
[email protected]