【发布时间】:2011-07-09 16:49:00
【问题描述】:
为什么是float.NaN != double.NaN?
而float.PositiveInfinity == double.PositiveInfinity 和float.NegativeInfinity == double.NegativeInfinity 相等。
示例:
bool PosInfinity = (float.PositiveInfinity == double.PositiveInfinity); //true
bool NegInfinity = (float.NegativeInfinity == double.NegativeInfinity); //true
bool isNanEqual = (float.NaN == double.NaN); //false, WHY?
【问题讨论】:
-
请任何人举一些当数字变为 NaN 的例子。
-
你也注意到
double.NaN != double.NaN了吗? -
参见“为什么 double.nan 不等于自身”stackoverflow.com/questions/1145443/…