Linux Man на русском

  User    Syst    Libr    Device    Files    Other    Admin  



   finite - isnanl

finite(3) isnanl


ОБЗОР

#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).