为什么Math.Pow(1.0, double.NaN)命令返回NaN而不是正确1.0?我理解NaN为一个不确定的值(数学上)代表所有实数,包括正负无穷大.对于所有这些值,表达式始终在数学上是正确的并且等于1.0.
Math.Pow(1.0, double.NaN)
NaN
1.0
例如,Python有它, 1**float("nan") == 1是True根据IEEE标准:
1**float("nan") == 1
True
对于任何y值(包括NaN),如果x为+1,则返回1.0.
.net c# math
.net ×1
c# ×1
math ×1