<分区>
我在使用 double 类型时遇到了一些问题。 在 MSDN,我读到了 double max value以下:
The result of an operation that exceeds Double.MaxValue is Double.PositiveInfinity.
我写了一些测试:
Console.WriteLine(double.MaxValue + 100000 - double.MaxValue);
Console.WriteLine(double.MaxValue);
Console.WriteLine(double.MaxValue + 100000);
Console.WriteLine(double.IsPositiveInfinity(double.MaxValue + 100000));
看到这个结果:
0
1,79769313486232E+308
1,79769313486232E+308
False
我不明白,double.MaxValue + 100000 不是正无穷大,而是等于 double MaxValue。根据 msdn 文档,我认为它应该是 PositiveInfinity。
我在 VS2012、.NET 4.5 中测试过