-1

我正在寻找一种将数字四舍五入到最接近的数字的方法,该数字可以除以 4 而没有余数

4

3 回答 3

2
num = std::round(num / 4.0) * 4.0;
于 2013-04-09T18:55:18.813 回答
2

这是一些伪代码。可能不是最有效的方法,但是...

if num mod 4 == 0 then you are good
if num mod 4 == 1 then subtract 1
if num mod 4 == 2 then you decide (subtract/add 2)
if num mod 4 == 3 then add 1
于 2013-04-09T18:55:47.700 回答
-3

使用以下宏:

#define ALIGN4(len) (((len) + 3) & ~3) // round up to 4 items 
于 2013-04-09T18:43:24.663 回答