考虑以下代码:
#include <iostream>
using namespace std;
int aaa(int a) {
cout << a * 0.3 << endl;
return a * 0.3;
}
int main()
{
cout << aaa(35000);
}
它打印出来:
10500
10499
为什么输出不同?
我有一个解决方法来使用“return a * 3 / 10;” 但我不喜欢它。
编辑:
发现做“return float(a * 0.3);” 给出期望值;