簡體   English   中英

iOS 圓一個浮點數

[英]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.

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