如何进行位运算(移位,与,或,异或等)使得奇数向上舍入到偶数?(负数也是同样的处理方式)
示例:
- 输入:3;输出:4 - 输入:4;输出:4 - 输入:5;输出:6 - 输入:6;输出:6 - 输入:-14;输出:-14 - 输入:-15;输出:-14
我的尝试:目前这个方法可以工作,但似乎有些冗余?
示例:
- 输入:3;输出:4 - 输入:4;输出:4 - 输入:5;输出:6 - 输入:6;输出:6 - 输入:-14;输出:-14 - 输入:-15;输出:-14
我的尝试:目前这个方法可以工作,但似乎有些冗余?
(((n + 1) >> 1) << 1)
有没有更简短的解决方案?
n + 1 & -2
(这个通用于向其他二次幂上舍入) - harold