Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Returns the floating-point classification of the argument.
Syntax
int fpclassify(
/* floating-point */ x
);
int fpclassify(
float x
); // C++ only
int fpclassify(
double x
); // C++ only
int fpclassify(
long double x
); // C++ only
Parameters
x
The floating-point value to test.
Return value
fpclassify returns an integer value that indicates the floating-point class of the argument x. This table shows the possible values returned by fpclassify, defined in <math.h>.
| Value | Description |
|---|---|
FP_NAN |
A quiet, signaling, or indeterminate NaN |
FP_INFINITE |
A positive or negative infinity |
FP_NORMAL |
A positive or negative normalized non-zero value |
FP_SUBNORMAL |
A positive or negative denormalized value |
FP_ZERO |
A positive or negative zero value |
Remarks
In C, fpclassify is a macro; in C++, fpclassify is a function overloaded using argument types of float, double, or long double. In either case, the value returned depends on the effective type of the argument expression, and not on any intermediate representation. For example, a normal double or long double value can become an infinity, denormal, or zero value when converted to a float.
Requirements
| Function/Macro | Required header (C) | Required header (C++) |
|---|---|---|
fpclassify |
<math.h> | <math.h> or <cmath> |
The fpclassify macro and fpclassify functions conform to the ISO C99 and C++11 specifications. For more compatibility information, see Compatibility.