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
signaling
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.
CONFORMING TO
C99.
AVAILABILITY
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.
This page is part of release 3.14 of the Linux
man-pages
project.
A description of the project,
and information about reporting bugs,
can be found at
http://www.kernel.org/doc/man-pages/.