我只是在ios中增加两个非常大的值。
value 1 999999999999
value 2 99999
我使用的数据类型为double long,即long long,这只适用于太大的值但不适用于像10 * 23这样的小值,我会得到不同的答案示例
10.0*111.5 actual value in calculator is 1115 but i wat i get is 1110
请帮助我,我也希望将我的答案舍入到像%.3f
这样的3个地方答案 0 :(得分:1)
这可能就是你在做什么
long long left = 111.5; //Not good! Will truncate to 111
long long right = 10.0; //10
long long result = left * right; //111 * 10 = 1110
这是你应该做的
double left = 111.5;
double right = 10.0;
double result = left * right; //111.5 * 10.0 = 1115.0
如果由于某种原因双重不够,你可以选择long double
。