我只是将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这样的地方
发布于 2012-12-03 17:30:11
这可能就是您正在做的事情
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如果由于某种原因,double还不够,你可以使用long double。
https://stackoverflow.com/questions/13680267
复制相似问题