大双值计算得到1e +作为结果 - iPhone

时间:2016-06-09 18:53:12

标签: ios objective-c iphone

我正在尝试将两个大的双倍值相乘如下。

long double lastKnownValue;

并且例如:当我乘以两个值时 1000 x 1000,我期待结果为1000000。 但它将结果表示为1e + 06。

如何将结果设为1000000? 对于小数字,它完美无缺。

enter image description here

2 个答案:

答案 0 :(得分:0)

%g%lg格式字符串请求大数字的科学记数法,这就是你得到的。尝试使用%Lf(你确定它是一个大写的" L"对于长的双倍?我认为它会是一个小写的L.)如果你没有' t想要小数分隔符后面的任何数字,请使用%.0Lf(实际上,我不确定字符的顺序,用于指定long double中的小数位数。可能是{{1} },但我认为第一个版本是正确的。)

答案 1 :(得分:0)

而不是

  

long double

使用

unsigned long long

例如:`

  

unsigned long long lastKnownValue;

     

unsigned long long currentValue = [mainLabel.text longLongValue];

     

的NSLog(@ “%LLU”,lastKnownValue);       //将新值设置为主标签       mainLabel.text = [NSString stringWithFormat:@“%llu”,lastKnownValue];