与运算符混淆时的不同值

时间:2019-06-28 09:28:25

标签: c printf double operation

我用c编写了以下代码行

printf("%g\n",0.08-0.5+0.42); //Result 0

printf("%g\n",0.08+0.42-0.5); //Result 0

printf("%g\n",0.42-0.5+0.08); //Result -1.38778e-017

您可以看到,我只是弄乱了运算符的顺序,在第三行得到了完全不同的结果。 有人可以向我解释一下。

0 个答案:

没有答案