Provided by: manpages-ru-dev_4.18.1-1_all bug

ИМЯ

       fpclassify,  isfinite,  isnormal,  isnan,  isinf - макросы классификации чисел с плавающей
       запятой

LIBRARY

       Math library (libm, -lm)

СИНТАКСИС

       #include <math.h>

       int fpclassify(x);
       int isfinite(x);
       int isnormal(x);
       int isnan(x);
       int isinf(x);

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

       fpclassify(), isfinite(), isnormal():
           _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L

       isnan():
           _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
               || _XOPEN_SOURCE
               || /* Since glibc 2.19: */ _DEFAULT_SOURCE
               || /* glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE

       isinf():
           _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
               || /* начиная с glibc 2.19: */ _DEFAULT_SOURCE
               || /* Glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE

ОПИСАНИЕ

       У чисел с плавающей запятой есть специальные значения, например для бесконечности или NaN.
       С  помощью  макроса  fpclassify(x)  вы  можете выяснить тип x. В качестве аргумента макрос
       принимает любое выражение  с  плавающей  запятой.  Результатом  будет  одно  из  следующих
       значений:

       FP_NAN        Значение x не является числом («Not a Number»).

       FP_INFINITE   Значение x стремится к плюс или минус бесконечности.

       FP_ZERO       Значение x равно нулю.

       FP_SUBNORMAL  Значение x слишком мало для представления в нормализованном формате.

       FP_NORMAL     Если  значение не равно ни одному из вышеперечисленных, то это обычное число
                     с плавающей запятой.

       Остальные макросы предоставляют короткие ответы на некоторые стандартные вопросы.

       isfinite(x)   возвращает ненулевое значение, если
                     (fpclassify(x) != FP_NAN && fpclassify(x) != FP_INFINITE)

       isnormal(x)   возвращает ненулевое значение, если (fpclassify(x) == FP_NORMAL)

       isnan(x)      возвращает ненулевое значение, если (fpclassify(x) == FP_NAN)

       isinf(x)      возвращает 1, если x равно положительной бесконечности и -1,  если  x  равно
                     отрицательной бесконечности.

АТРИБУТЫ

       Описание терминов данного раздела смотрите в attributes(7).

       ┌───────────────────────────────────────────────────────┬──────────────────────┬──────────┐
       │ИнтерфейсАтрибутЗначение │
       ├───────────────────────────────────────────────────────┼──────────────────────┼──────────┤
       │fpclassify(), isfinite(), isnormal(), isnan(), isinf() │ Безвредность в нитях │ MT-Safe  │
       └───────────────────────────────────────────────────────┴──────────────────────┴──────────┘

СТАНДАРТЫ

       POSIX.1-2001, POSIX.1-2008, C99.

       Про isinf() в стандартах лишь сказано, что этот макрос возвращает ненулевое значение, если
       только аргумент равен бесконечности.

ЗАМЕЧАНИЯ

       В glibc 2.01 и более ранних isinf() возвращает ненулевое значение (а  именно  1),  если  x
       равно положительной или отрицательной бесконечности (это всё, что требует C99).

СМ. ТАКЖЕ

       finite(3), INFINITY(3), isgreater(3), signbit(3)

ПЕРЕВОД

       Русский    перевод    этой    страницы    руководства    был    сделан   Azamat   Hackimov
       <azamat.hackimov@gmail.com>,  Dmitry  Bolkhovskikh  <d20052005@yandex.ru>,   Yuri   Kozlov
       <yuray@komyakino.ru> и Иван Павлов <pavia00@gmail.com>

       Этот  перевод  является  бесплатной  документацией;  прочитайте  Стандартную  общественную
       лицензию GNU версии 3 ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ или более позднюю, чтобы
       узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ.

       Если  вы  обнаружите  ошибки  в  переводе этой страницы руководства, пожалуйста, отправьте
       электронное письмо на ⟨man-pages-ru-talks@lists.sourceforge.net⟩.