isunordered
From cppreference.com
 
 
 
 
 
  C 
 Concurrency support (C11)
 Common mathematical functions 
 
  
  
 
 
 
 
 
  
 
  
  
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 Functions
 Basic operations
 Maximum/minimum operations
(C23)
(C23)
(C23)
(C23)
(C23)
   Exponential functions
 Power functions
 Trigonometric and hyperbolic functions
 Nearest integer floating-point
 Floating-point manipulation
 Narrowing operations
 Quantum and quantum exponent
(C23)
(C23)
(C23)
(C23)
 Decimal re-encoding functions
(C23)
(C23)
(C23)
(C23)
 Total order and payload functions
(C23)
(C23)
(C23)
(C23)
 Classification
(C99)
(C23)
 (C99)
(C99)
(C99)
(C99)
(C99)
(C23)
(C23)
(C99)
(C99)
  (C99)
(C99)
(C99)
isunordered
(C99)
(C23)
(C23)
 Error and gamma functions
 Types
(C99)(C99)
(C99)(C99)
(C23)(C23)
 Macro constants
 Special floating-point values
(C99)(C99)(C23)
(C99)(C23)
(C99)(C23)
 Arguments and return values
(C99)(C99)
(C99)(C99)(C99)(C99)(C99)
(C23)(C23)
(C23)(C23)(C23)(C23)(C23)
 Error handling
(C99)(C99)
 (C99)
 Fast operation indicators
(C99)(C99)
(C23)(C23)(C23)(C23)
(C23)(C23)(C23)(C23)
(C23)(C23)(C23)(C23)
(C99)(C23)
(C23)(C23)(C23)(C23)
(C23)(C23)(C23)(C23)
(C23)(C23)(C23)(C23)
Defined in header 
 
 
<math.h> 
 #define isunordered(x, y) /* implementation defined */
 
 (since C99) 
Determines if the floating point numbers x and y are unordered, that is, one or both are NaN and thus cannot be meaningfully compared with each other.
[edit] Parameters
 x
 -
 floating point value
 y
 -
 floating point value
[edit] Return value
Nonzero integral value if either x or y is NaN, 0 otherwise.
[edit] Example
Run this code
#include <math.h> #include <stdio.h> int main(void) { printf ("isunordered(NAN,1.0) = %d\n", isunordered(NAN, 1.0)); printf ("isunordered(1.0,NAN) = %d\n", isunordered(1.0, NAN)); printf ("isunordered(NAN,NAN) = %d\n", isunordered(NAN, NAN)); printf ("isunordered(1.0,0.0) = %d\n", isunordered(1.0, 0.0)); return 0; }
Possible output:
isunordered(NAN,1.0) = 1 isunordered(1.0,NAN) = 1 isunordered(NAN,NAN) = 1 isunordered(1.0,0.0) = 0
[edit] References
- C23 standard (ISO/IEC 9899:2024):
- 7.12.14.6 The isunordered macro (p: TBD)
 
- F.10.11 Comparison macros (p: TBD)
 
- C17 standard (ISO/IEC 9899:2018):
- 7.12.14.6 The isunordered macro (p: TBD)
 
- F.10.11 Comparison macros (p: TBD)
 
- C11 standard (ISO/IEC 9899:2011):
- 7.12.14.6 The isunordered macro (p: 261)
 
- F.10.11 Comparison macros (p: 531)
 
- C99 standard (ISO/IEC 9899:1999):
- 7.12.14.6 The isunordered macro (p: 242)
 
[edit] See also
C++ documentation  for isunordered