В чем разница между номерами IND и NAN

Значение NAN означает не число, а значение IND означает неопределенный номер. Но в чем разница между этими двумя. Как мы можем представлять оба в C ++.

5

Решение

Но в чем разница между этими двумя.

Они оба одно и то же. Некоторые платформы предпочитают отображать не-номер как некоторый вариант NaNв то время как другие предпочитают отображать его как некоторый вариант IND,

Как мы можем представлять оба в C ++.

std::numeric_limits<double>::quiet_NaN() (или же float или же long double, Если вы предпочитаете).

5

Другие решения

Если ваша операция сгенерирует большее положительное число, чем может быть сохранено в двойном, операция вернется 1.#INF на винде или инф на линуксе

Некоторые операции не имеют математического смысла, например, получение квадратного корня из отрицательного числа. sqrt(-1.0) а также log(-1.0) возвратил бы NaN, общий термин для «числа», которое является «не числом».

Windows отображает NaN как -1.#IND («IND» для «неопределенного»), в то время как Linux отображает nan, Другие операции, которые возвращали бы NaN включают 0/0, 0 * ∞ и ∞ / ∞.

Ссылка Ссылка1

Ссылка Ссылка2

2

По вопросам рекламы [email protected]