[英]iOS round a float
我有一個具有更多十進制數字的浮點數,例如:
float fRes = 10.0 / 3.0;
實際上 fRes 值是 3.3333333333333 它可以設置例如 2 個十進制數字:
float fRes = 10.0 / 3.0;
// fRes is 3.333333333333333333333333
float fResOk = FuncRound( fRes, 2 );
// fResOk is 3.33
提前致謝
我不知道你在哪里使用這個四舍五入的數字,但是你應該只在向用戶顯示它時四舍五入你的值,例如有基於 C 的格式字符串方法來四舍五入浮點數
[NSString stringWithFormat:@"%.2f", value];
您可能已經讀過,浮點數是實數的近似值,因此fResOk = roundf( fRes*100.0)/100.0;
可能不會給你 3.33,而是一個與浮點數一樣接近 3.33 的數字。
假設您正在尋找正確的 function 以四舍五入到一定位數,您可能會發現執行以下操作最容易:
fResOk = roundf( fRes*100.0)/100.0;
這會將值乘以100
(為您提供 2 位有效數字),將值四舍五入,然后將其減小回最初開始的大小。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.