簡體   English   中英

目標C將雙精度值截斷為2個小數位

[英]Objective C truncate double value to 2 decimal places

我正在嘗試將double值截斷為兩位小數。 我嘗試使用:

[highScoreLabel setText:[NSString stringWithFormat:@"Highscore: %.2f",finalTime]];

但我發現它會將數字四舍五入到第二位。 這使我要報告給游戲中心的分數與應用程序中顯示的分數有所不同。 如何截取小數的其余部分而不四舍五入?

@dasdom的答案很好。 但是,如果您不喜歡隱式強制轉換,則可以使用

finalTime = trunc(finalTime * 100) / 100;

如果您收到錯誤消息,表示'trunc'函數是未知的-只需導入math.h標頭即可:

#import <math.h>

轉儲解決方案(未經測試):

finalTime = ((int)(finalTime * 100.0f))/100.0f;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM