【发布时间】:2013-01-21 02:38:28
【问题描述】:
我不明白为什么以下返回 1:
0x0102 && (0xff << 8)
据我了解,将0xff 向左移动八位会导致0x00;和anding 任何东西都会导致0x00。我哪里错了?
【问题讨论】:
-
我明白了 - 我被 bitshift 挂断了。它返回 0xff00,而不是 0x00。逻辑 && 然后返回 1。
-
这可能有助于说明:ideone.com/Xdrixx
标签: c logic bit-manipulation boolean-logic conditional-statements