如何将double加倍到n位小数?

时间:2012-03-24 05:58:49

标签: c++ math rounding

我试图在标准库中找到一个圆函数,但我没有看到一个。有没有办法在c ++中将double加到n位?

1 个答案:

答案 0 :(得分:11)

C ++ 11在<cmath>中有std::round

如果没有它,你可以在调整后的数字上使用std :: floor和std :: ceil。例如。 std::floor(n * 100 + 0.5)/100舍入到小数点后两位。

虽然应该注意到舍入并非完全无关紧要;有一些复杂因素,例如选择向零舍入,向负无穷大舍入,舍入为偶数等。如果您正在编写用于生产的程序,请确保您了解域的舍入要求。