INFINITY
Section: Linux Programmer's Manual (3)
Updated: 2007-07-26
Index
Return to Main Contents
NAME
INFINITY, NAN, HUGE_VAL, HUGE_VALF, HUGE_VALL - floating-point constants
SYNOPSIS
#define _ISOC99_SOURCE
#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 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.
SEE ALSO
fpclassify(3),
feature_test_macros(7),
math_error(7)
COLOPHON
This page is part of release 3.22 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/.