我將計算結果舍入到兩位小數時遇到問題。使用舍入浮點數的目標C問題
這是一個財務計算,當結果涉及半分錢時,我希望這個數字被四捨五入,但實際上它正在向下舍入。
複製問題:
float raw = 16.695;
NSLog(@"All DP: %f",raw);
NSLog(@"2 DP: %.2f",raw);
返回:
All DP: 16.695000
2 DP: 16.69
而我希望看到:
All DP: 16.695000
2 DP: 16.70
任何人都可以提出建議,如果這是由設計,或者如果(最有可能的)我錯過了一些東西,如果有什麼我可以做的來解決它。在這種情況下,它是至關重要的。
由於提前, 奧利
嘗試的NSLog(@ 「9 DP:%.9f」,生);你會得到:16.694999695 – Felix 2011-06-13 17:12:51
如果你使用雙精度,它會在你的例子中取整 – Felix 2011-06-13 17:15:25
好吧,這樣的工作,但出於興趣,爲什麼?爲什麼它沒有按照設定的16.695存儲號碼? – faroligo 2011-06-13 17:32:35