授人以鱼不如授人以渔。
编译成功后,按F10一步一步运行,下面会有监视窗口,可以随时查看执行到每一步时变量的值。
a =077,表示a=八进制数077,也就是二进制数000 111 111,加上符号位就是00000000 00000000 00000000 00111111(int占用4个字节)
b=a&3,也就是按位与,
00000000 00000000 00000000 00111111&
00000000 00000000 00000000 00000011 =
00000000 00000000 00000000 00000011
也就是说这个时候b = 3
b&=7表示b=b&7,
00000000 00000000 00000000 00000011 &
00000000 00000000 00000000 00111111 =
00000000 00000000 00000000 00000011
结果当然也是3
按位与就是对应的位同时为1,那么结果就为1