Namespaces
Variants

isunordered

From cppreference.net
< c ‎ | numeric ‎ | math
Common mathematical functions
Functions
Basic operations
(C99)
(C99)
(C99)
(C99) (C99) (C99) (C23)
Maximum/minimum operations
Exponential functions
Power functions
Trigonometric and hyperbolic functions
Nearest integer floating-point
(C99) (C99) (C99)
(C23) (C23) (C23) (C23)
Floating-point manipulation
Narrowing operations
(C23)
(C23)
(C23)
(C23)
(C23)
(C23)
Quantum and quantum exponent
Decimal re-encoding functions
Total order and payload functions
Classification
Error and gamma functions
(C99)
(C99)
(C99)
(C99)
Types
Macro constants
Special floating-point values
Arguments and return values
Error handling
Fast operation indicators
Определено в заголовке <math.h>
#define isunordered(x, y) /* implementation defined */
(начиная с C99)

Определяет, являются ли числа с плавающей запятой x и y несравнимыми, то есть одно или оба являются NaN и, следовательно, не могут быть осмысленно сравнены друг с другом.

Содержание

Параметры

x - значение с плавающей точкой
y - значение с плавающей точкой

Возвращаемое значение

Ненулевое целочисленное значение, если либо x или y является NaN, 0 в противном случае.

Пример

#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;
}

Возможный вывод:

isunordered(NAN,1.0) = 1
isunordered(1.0,NAN) = 1
isunordered(NAN,NAN) = 1
isunordered(1.0,0.0) = 0

Ссылки

  • Стандарт C23 (ISO/IEC 9899:2024):
  • 7.12.14.6 Макрос isunordered (стр.: TBD)
  • F.10.11 Макросы сравнения (стр.: TBD)
  • Стандарт C17 (ISO/IEC 9899:2018):
  • 7.12.14.6 Макрос isunordered (стр.: TBD)
  • F.10.11 Макросы сравнения (стр.: TBD)
  • Стандарт C11 (ISO/IEC 9899:2011):
  • 7.12.14.6 Макрос isunordered (стр. 261)
  • F.10.11 Макросы сравнения (стр. 531)
  • Стандарт C99 (ISO/IEC 9899:1999):
  • 7.12.14.6 Макрос isunordered (стр. 242)

Смотрите также

классифицирует заданное значение с плавающей точкой
(макрос-функция)
(C99)
проверяет, является ли заданное число NaN
(макрос-функция)
C++ documentation для isunordered