-1.#IND是Windows 上NaN的文本表示.
您可以使用以下小函数检查浮点值是否为NaN:
// NaN never compares equal, not even to itself
bool is_nan(double d){ return d != d; }
Run Code Online (Sandbox Code Playgroud)
(正如@chris所说,如果你有一个符合C++ 11标准的stdlib,你会std::isnan进入<cmath>.)
在正常的程序流程中,只要您理智地检查数学输入,就不必担心NaN.当然,您也可以采用其他方式进行数学计算,然后检查NaN.:)