按位视图简化版
刚才发了个贴咋半天没人回答捏?这里是精简版
我想问为什么结果是on on而不是off off
#include <stdio.h>
int main (void)
{
unsigned long font = 0x0;
if ((font >> 0) & 1 == 0)
printf ("off ");
else
printf ("on ");
if ((font >> 1) & 1 == 0)
printf ("off ");
else
printf ("on ");
return 0;
}
[解决办法]
| U | I | B | ALIGNMENT | | SIZE | ID |
|-----+-----+-----+-----------+---+------+----|
| off | off | off | left | | 12 | 1 |
| 0 | 0 | 0 | 0 | 1 | 0 | 12 | 1 |
| 0x00 | 0x00 | 0x10 | 0xC1 |
- C/C++ code
#include <stdio.h>int main(int argc, char *argv[]){ unsigned long font; // = 0x11000000; scanf("%lx", &font); if (((font >> 24) & 0XF1) == 0) printf ("off "); else printf ("on "); if (((font >> 28) & 1) == 0) printf ("off\n"); else printf ("on\n"); return 0;}
[解决办法]
优先级啊~~大哥~~if (((font >> 0) & 1 )== 0)
[解决办法]