INFINITY, NAN, HUGE_VAL, HUGE_VALF, HUGE_VALL — floating point constants
#define _ISOC99_SOURCE #include <math.h> INFINITY NAN HUGE_VAL HUGE_VALF HUGE_VALL
The macro INFINITY
expands
to a float constant representing positive infinity.
The macro NAN
expands to a
float constant representing a quiet NaN (when supported). A
quiet
NaN is a NaN
("not-a-number") that does not raise exceptions when it is
used in arithmetic. The opposite is a signalling
NaN. See IEC
60559:1989.
The macros HUGE_VAL
,
HUGE_VALF
, HUGE_VALL
expand to constants of types
double, float and long double, respectively, that represent a
large positive value, possibly plus infinity.
On a glibc system, the macro HUGE_VAL is always available.
Availability of the NAN macro can be tested using
#ifdef NAN, and
similarly for INFINITY, HUGE_VALF, HUGE_VALL. They will be
defined by <math.h>
if
_ISOC99_SOURCE or _GNU_SOURCE is defined, or __STDC_VERSION__
is defined and has a value not less than 199901L.
fpclassify(3), feature_test_macros(7)
|