Man Linux: Main Page and Category List

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.24 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/.

                                  2007-07-26