Mih*_*yan 27 c c++ cross-platform
是(bool)(i & 1)和i % 2 == 1总是相同的地方i是int?
注意:总是说我的意思是所有平台(即使字节是16位)和所有C和C++标准.
编辑:
适用于所有C和C++标准bool.
Ste*_*sop 49
没有.
1的补码表示int,-1的表示是1 ... 10,所以它们不同.
无论如何,i % 2对于负数可能是负的i(当它不是0时,它必须在C99中),因此对于负奇数不等于1.