档案销毁领导小组:帮忙看一下谢谢

来源:百度文库 编辑:高考问答 时间:2024/03/29 21:22:05
printf("%d \n",12 &012);的输出结果是 答案是8
为什么是8能做下解释吗?

12 是十进制 转化成2进制 是 1100
012是八进制 转化成2进制 是 1010
做 & 运算的结果 是 1000
1000转化成十进制 就是 8 !!!

12(十进制) = 1100(二进制)
012(八进制) = 1000(二进制)

做"与"运算
结果 = 1000(二进制)= 8 (十进制)