isnormal

Header: <math.h>

Determines if the given floating-point number arg is normal, i.e. is neither zero, subnormal, infinite, nor NaN. The macro returns an integral value.

# Declarations

#define isnormal(arg) /* implementation defined */

(since C99)

# Parameters

# Return value

Nonzero integral value if arg is normal, 0 otherwise.

# Example

#include <float.h>
#include <math.h>
#include <stdio.h>
 
int main(void)
{
    printf("isnormal(NAN)         = %d\n", isnormal(NAN));
    printf("isnormal(INFINITY)    = %d\n", isnormal(INFINITY));
    printf("isnormal(0.0)         = %d\n", isnormal(0.0));
    printf("isnormal(DBL_MIN/2.0) = %d\n", isnormal(DBL_MIN / 2.0));
    printf("isnormal(1.0)         = %d\n", isnormal(1.0));
}

# See also