下面程序段的输出结果是【1】。 int a=12;a=a&052;printf("%d\n",a); 答案:

为什么是8?怎么算?... 为什么是8?怎么算? 展开
 我来答
john_lee1969
2014-06-26 · TA获得超过1697个赞
知道小有建树答主
回答量:419
采纳率:100%
帮助的人:520万
展开全部
052是八进制数,转换到十进制就是42,16进制就是0x2a,和12与,结果为 8。

答案就是 8。
追问
和12与?大哥,,,与的符号是&&,
追答
&& 是逻辑与(是逻辑“并且”的意思),& 是数据按位(2进制)与。
052(8)->0x2a(16)->00101010(2)
12(10)->0xc(16)->00001100(2)

00101010
00001100
--------------
00001000
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式