С++ isnan() не будет работать в операторе if?

Я пытаюсь проверить, не является ли переменная числом. я пытался использовать std::isnan()для этого.

Вот код, который, как я думал, будет работать:

      #include <iostream>
#include <cstddef>
#include <cmath>

int main()
{
    int num = 1;
    if (std::isnan(num))
    {
        std::cout << num << " is a Number" << std::endl;
    }
    else
    {
        std::cout << num << " is a Number" << std::endl;
    }
}

Ошибка, которую он дает, следующая:

«fpclassify»: неоднозначный вызов перегруженной функции.

Я не могу понять, почему это не будет работать должным образом, что можно увидеть на многих веб-сайтах в качестве примеров.

Вот также скриншот всего:

0 ответов

Другие вопросы по тегам