为什么在JavaScript和Python中0.1 + 0.3 = 0.4?

时间:2016-11-24 09:38:57

标签: floating-point numbers double

我知道为什么0.1 + 0.2 !== 0.3,因为0.1无法在二进制浮点表示中精确表示,但为什么JavaScript中的0.1 + 0.3 === 0.4?我认为0.1,0.3两者都无法准确表示,为什么0.1 + 0.3将完全等于0.4?我在C中测试了这个,我得到了0.40000000000000002,这个结果就是我想要的,这是我的C代码

#include "stdio.h"

int main(){

double a = 0.1 + 0.3;
printf( "%.17lf", a );

}

非常感谢你!

0 个答案:

没有答案