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 in-
finity.
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
C11.
HISTORY
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 IN-
FINITY, 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.
SEE ALSO
fpclassify(3), math_error(7)
Linux man-pages 6.9.1 2024-05-02 INFINITY(3)
Generated by dwww version 1.16 on Fri Dec 12 08:10:21 CET 2025.