-5
A
回答
2
如果您有C++ 11,則可以使用std::round函數。
否則,您可能需要使用它們的一個取決於您的要求std::floor或std::ceil
1
如果你沒有C++ 11,你可以這樣做:
int NearestInteger(float N) {
return int(floor(N + 0.5f));
}
然而,它可能對大型浮標不正確工作。首先,如果您的號碼不適合int,任何垃圾都可以退回。其次,它可能會返回大於2^24的錯誤結果,因爲not each integer is exactly representable in single precision float number。
+1
Exceeded *「如果在目標類型中截斷的值不能爲 ,則行爲未定義。」*每4.9/1'[conv.fpint]'。 –
+0
@TonyD是的,你是對的。來電者不得不擔心溢出。 – stgatilov
相關問題
- 1. 四捨五入浮點數的問題
- 2. 四捨五入整數浮點朝0
- 3. 四捨五入浮點數列表?
- 4. 四捨五入C中沒有內置函數的浮點值
- 5. 四捨五入浮點數最多兩位小數
- 6. 四捨五入的小數點浮點數
- 7. 帶小數點四捨五入的PHP浮點數
- 8. 如何四捨五入浮點數。到小數點後兩位?
- 9. 浮點計算和四捨五入
- 10. 浮點四捨五入libLAS Python API
- 11. .net解析()四捨五入浮點值
- 12. 浮點四捨五入0.5到0
- 13. 浮點四捨五入變化2.4
- 14. c + +浮動四捨五入(錯誤?)
- 15. c + +浮動瓦爾四捨五入
- 16. 只有四捨五入的Python函數?
- 17. 四捨五入爲最小整數值
- 18. 用於四捨五入浮點數值的NSNumberFormatter
- 19. 使用浮點數的Python四捨五入錯誤
- 20. PHP oci select返回Windows上的四捨五入浮點數Apache
- 21. 如何將浮點四捨五入到最接近的.001
- 22. 四捨五入長小數點
- 23. 四捨五入到兩個小數點
- 24. 四捨五入至整數
- 25. 數字四捨五入
- 26. 四捨五入數字
- 27. 四捨五入數字
- 28. Rspec eq()四捨五入數
- 29. java四捨五入數
- 30. 四捨五入數字
你有沒有聽說過Google? –
我什麼都沒發現! –
@Vasiu:你的要求與答案中的功能有什麼不同嗎?(這裏是http://stackoverflow.com/questions/485525/round-for-float-in-c?rq=1)? –