main() {unsigned char a,b,c; a=0x8; b=a|0x8; c=b<<1; printf("%d%d\n",b,c); }

这道题很多地方都有答案但我想要过程的讲解不会的人勿进... 这道题很多地方都有答案 但我想要过程的讲解 不会的人勿进 展开
 我来答
百度网友28b4182
2012-02-09 · TA获得超过7222个赞
知道大有可为答主
回答量:4847
采纳率:100%
帮助的人:1839万
展开全部
main() {
unsigned char a,b,c;
a=0x8;
b=a|0x8; //|是位与,就是把一个数字转化成二进制然后进行位与运算,每一位相与,有1出1,无1出0
a的二进制是
0x8也是1000
1000
1000
结果是1000
所以b=0x8
c=b<<1; //也是位运算,是把数字按二进制左移一位
b的二进制是1000
左移一位是10000
printf("%d%d\n",b,c); }
输出的是十进制的
输出出8 16
123冰霜雪月
2012-02-09 · TA获得超过303个赞
知道小有建树答主
回答量:368
采纳率:0%
帮助的人:247万
展开全部
首先定义无符号的字符型 a b c
其中a为十六进制的数 b是a与0x8进行逻辑与运算
c的值是b左移2位
然后将b c以十进制的形式输出来
运算时要将十六进制转为二进制 这个应该会 不说了 望采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式