INFINITY(3) Linux Programmer's Manual INFINITY(3)
INFINITY, NAN, HUGE_VAL, HUGE_VALF, HUGE_VALL - floating-point constants
#define _ISOC99_SOURCE /* See feature_test_macros(7) */
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.
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_VER-
SION__ is defined and has a value not less than 199901L.
This page is part of release 3.55 of the Linux man-pages project. A description of the
project, and information about reporting bugs, can be found at