 Manual Page Search Parameters

 FPCLASSIFY(3) Library Functions Manual FPCLASSIFY(3)

# NAME

`fpclassify`, `isfinite`, `isinf`, `isnan`, `isnormal`, `signbit`, `finite`, `finitef`, `isinff`, `isnanf`
classify a floating-point number

# SYNOPSIS

`#include <math.h>`

int
`fpclassify`(real-floating x);

int
`isfinite`(real-floating x);

int
`isinf`(real-floating x);

int
`isnan`(real-floating x);

int
`isnormal`(real-floating x);

int
`signbit`(real-floating x);

# DESCRIPTION

The `fpclassify`() macro takes an argument of x and returns one of the following manifest constants:

Indicates that x is an infinite number.
Indicates that x is not a number (NaN).
Indicates that x is a normalized number.
Indicates that x is a denormalized number.
Indicates that x is zero (0 or -0).

The `isfinite`() macro returns a non-zero value if and only if its argument has a finite (zero, subnormal, or normal) value.

The `isinf`(), `isnan`(), and `isnormal`() macros return non-zero if and only if x is an infinity, NaN, or a non-zero normalized number, respectively.

The `signbit`() macro takes an argument of x and returns non-zero if the value of its sign is negative, otherwise 0.

isgreater(3)

# STANDARDS

The `fpclassify`(), `isfinite`(), `isinf`(), `isnan`(), `isnormal`(), and `signbit`() macros conform to ISO/IEC 9899:1999 (“ISO C99”).

The symbols `isinff`(), and `isnanf`() are provided as compatibility aliases to `isinf`(), and `isnan`(), respectively, and their uses are deprecated. Similarly, `finite`() and `finitef`() are deprecated versions of `isfinite`().

# HISTORY

The `fpclassify`(), `isfinite`(), `isinf`(), `isnan`(), `isnormal`(), and `signbit`() macros were added in OpenBSD 4.4. 3BSD introduced `isinf`() and `isnan`() functions, which accepted double arguments; these have been superseded by the macros described above.
 March 10, 2016 OpenBSD-current