FP_NORMAL, FP_SUBNORMAL, FP_ZERO, FP_INFINITE, FP_NAN

From Cppreference

Jump to: navigation, search
Defined in header <cmath>

#define FP_NORMAL    /*implementation defined*/
(since C++11)
#define FP_SUBNORMAL /*implementation defined*/
(since C++11)
#define FP_ZERO      /*implementation defined*/
(since C++11)
#define FP_INFINITE  /*implementation defined*/
(since C++11)
#define FP_NAN       /*implementation defined*/
(since C++11)

The FP_NORMAL, FP_SUBNORMAL, FP_ZERO, FP_INFINITE, FP_NAN macros each represent a distinct category of floating-point numbers. They all expand to an integer constant expression.

Constant Explanation
FP_NORMAL indicates that the value is normal, i.e. not an infinity, subnormal, not-a-number or zero
FP_SUBNORMAL indicates that the value is subnormal
FP_ZERO indicates that the value is positive or negative zero
FP_INFINITE indicates that the value is not representable by the underlying type (positive or negative infinity)
FP_NAN indicates that the value is not-a-number (NaN)

[edit] See also

(C++11)
categorizes the given floating point value
(function)