这听起来类似于math.h中的round()函数
这些函数应将它们的参数四舍五入为浮点格式的最接近的整数值,无论当前的舍入方向如何,都将中间的情况四舍五入.
还有lrint()给你一个int返回值,虽然lrint()和朋友服从当前的舍入方向 - 你必须使用fesetround()来设置它,这里可以找到各种舍入方向.
如果标准库中没有round()
函数,则在处理浮点数时,您可以任意评估每个值,分析要舍入到的位置后面的数字,检查它是否更大,等于或小于5;然后,如果该值小于 5,您就可以floor()
得到您最终要查看的数字。如果四舍五入位置后面的数字值为 5 或更大,则可以继续使用floor()
正在评估的数字,然后加 1。
对于与此相关的任何低效率,我深表歉意。