永发信息网

c语言书中用按位非运算符计算13只有8位进行翻转,而int类型有32位,为什么

答案:2  悬赏:20  手机版
解决时间 2021-11-23 15:57
  • 提问者网友:轮囘Li巡影
  • 2021-11-23 07:34
c语言书中用按位非运算符计算13只有8位进行翻转,而int类型有32位,为什么
最佳答案
  • 五星知识达人网友:轻熟杀无赦
  • 2021-11-23 07:43
13只有8位翻转什么意思 再描述下

评论那样不好看了 写不下 在这里写下你看看:
13
32位表示:0000 0000 0000 0000 0000 0000 1101

~13
1111 1111 1111 1111 1111 1111 0010

你去执行
printf("0x%x", ~13);
看看输出结果:
应该是: fffffff2
fffffff2 对应值就是
1111 1111 1111 1111 1111 1111 0010

你的“只有8位进行翻转”怎么来的?不理解
全部回答
  • 1楼网友:青灯有味
  • 2021-11-23 09:03
int类型在不少环境里面都是用4字节的内存来表示,所以是32位。你说的13大概是一种只会占用1字节的类型。追问确实是int类型的,我看过是4个字节
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯