FINITE(3)

ИМЯ
finite, finitef, finitel, isinf, isinff, isinfl, isnan, isnanf, isnanl - функции BSD для классификации чисел с плавающей запятой

ОБЗОР
#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);

Требования макроса тестирования свойств для glibc (см. feature_test_macros(7)):

finite(), finitef(), finitel():
    _BSD_SOURCE || _SVID_SOURCE
isinf():
    _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE >= 600 || _ISOC99_SOURCE;
    или cc -std=c99
isinff(), isinfl():
    _BSD_SOURCE || _SVID_SOURCE
isnan():
    _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE || _ISOC99_SOURCE;
    или cc -std=c99
isnanf(), isnanl():
    _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE >= 600

ОПИСАНИЕ
Функции finite(), finitef() и finitel() возвращают ненулевое значение, если x не равно бесконечности или «не числу» (NaN), в противном случае 0. Функции isnan(), isnanf() и isnanl() возвращают ненулевое значение, если x равно NaN, в противном случае 0. Функции isinf(), isinff() и isinfl() возвращают 1, если x равно плюс бесконечности, -1, если x равно минус бесконечности, в остальных случаях 0.

АТРИБУТЫ
Описание терминов данного раздела смотрите в attributes(7).
Интерфейс | Атрибут | Значение
finite(), finitef(), finitel(), isinf(), isinff(), isinfl(), isnan(), isnanf(), isnanl() | безвредность в нитях | безвредно (MT-Safe)

ЗАМЕЧАНИЯ
Заметим, что эти функции устарели. В C99 их заменили макросы isfinite(), isinf() и isnan() (для всех типов). Также заметим, что для isinf() C99 не гарантируется возвращаемого значения. Смотрите fpclassify(3).

СМОТРИТЕ ТАКЖЕ
fpclassify(3)