对于这个C ++程序......
#include <iostream>
using namespace std;
int main () {
float d = 0.1;
float e = 0.2;
float result = d + e;
bool is_equal = (result == 0.3);
cout << result << endl;
cout << is_equal << endl;
return 0;
}
打印到控制台的答案是......
0.3
0
问题:
result
的值不等于0.30000000000000004
,就像我使用的任何其他语言(Ruby,JavaScript,Elixir)一样?result
为0.3
,为什么result
等于0.3
?result