Spec-Zone.ru › C

isunordered

Определено в заголовочном файле <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)

См. также

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

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/c/numeric/math/isunordered

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API