是否有任何理由使用(nr&1 == 0)超过(nr%2 == 0)来检查奇偶校验?

Ste*_*han 6 bit-manipulation parity bitwise-and

性能有任何实际差异吗?它更快吗?(假设我在同一个程序中的至少100个案例中使用它,它会在速度方面改进我的程序吗?)

Gov*_*mar 5

这个问题可能更适合软件工程堆栈交换.

如果你正在使用优化编译器,那么无论如何n % <power of two>都会有任何形式的优化n & <power of two minus one>,因为它们是等效的,但几乎每个架构我都能想到后者更有效率.

前一种形式更清楚地表达了你的意图,尽管许多开发人员会认为n & 1它是"更快的版本" n % 2.