double.parse返回精度差异

use*_*547 1 c#

为什么double.parse ("1833.35")返回值1833.349999999999

Poi*_*nty 6

这是因为浮点值在机器中用二进制指数表示,而10不是2的偶数幂.因此,一些基数为10的分数在转换时变成重复分数.

为了说明,只需弄清楚如何用二进制表示35/100.