INFINITY(3) Library Functions Manual INFINITY(3) NAME INFINITY, NAN, HUGE_VAL, HUGE_VALF, HUGE_VALL - floating-point constants LIBRARY Math library (libm) SYNOPSIS #define _ISOC99_SOURCE /* See feature_test_macros(7) */ #include <math.h> INFINITY NAN HUGE_VAL HUGE_VALF HUGE_VALL DESCRIPTION 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 positive infinity. STANDARDS C99. 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 de‐ fined, or __STDC_VERSION__ is defined and has a value not less than 199901L. SEE ALSO fpclassify(3), math_error(7) Linux man-pages 6.03 2022-10-09 INFINITY(3)