Important This document may not represent best practices for current development, links to downloads and other resources may no longer be valid. Current recommended version can be found here. ArchiveDisclaimer


Checks given double-precision floating-point value for not a number (NAN).

int _isnan(
   double x 


Double-precision floating-point value.

Return Value

_isnan returns a nonzero value if the argument x is a NAN; otherwise it returns 0.


The _isnan function tests a given double-precision floating-point value x, returning a nonzero value if x is a not a number (NAN). A NAN is generated when the result of a floating-point operation cannot be represented in Institute of Electrical and Electronics Engineers (IEEE) format. For information about how a NAN is represented for output, see printf.


Routine Required header Compatibility
_isnan <float.h> Win 98, Win Me, Win NT, Win 2000, Win XP

For additional compatibility information, see Compatibility in the Introduction.


All versions of the C run-time libraries.

See Also

Floating-Point Support Routines | _finite | _fpclass | Run-Time Routines and .NET Framework Equivalents

© 2015 Microsoft