lowbit lowbit 可以输出最后一个 1 构成的数。 原理是:00101000 取反:11010111 加 1:11011000 与原数按位与:00001000 输入 0b00101000 输出 0b00001000 int lowbit(int x) { return (~x + 1) & x; }