Scroll to navigation

NAN(3) Руководство программиста Linux NAN(3)

ИМЯ

nan, nanf, nanl - возвращает «Not a Number» (не является числом)

ОБЗОР

#include <math.h>

double nan(const char *tagp);
float nanf(const char *tagp);
long double nanl(const char *tagp);

Компонуется при указании параметра -lm.


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

nan(), nanf(), nanl():

_XOPEN_SOURCE >= 600 || _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L;
или cc -std=c99

ОПИСАНИЕ

Данные функции возвращают представление (определённое в tagp) тихого NaN. Если реализация не поддерживает тихие (quiet) NaN, данные функции возвращают ноль.

Вызов nan("символьная последовательность") равнозначен следующему:


strtod("NAN(символьная последовательность)", NULL);

Вызовы nanf() и nanl() эквивалентны аналогичным вызовам strtof(3) и strtold(3).

Использование аргумента tagp не регламентировано. В системах, совместимых с IEEE 754, существует несколько реализаций NaN, и tagp используется в одной из них. В других системах он может ничего не делать.

ВЕРСИИ

Эти функции впервые появились в glibc 2.1.

СООТВЕТСТВИЕ СТАНДАРТАМ

C99, POSIX.1-2001. См. также IEC 559 и приложение с рекомендуемыми функциями в IEEE 754/IEEE 854.

СМОТРИТЕ ТАКЖЕ

isnan(3), strtod(3), math_error(7)

2010-09-20 GNU