c语言0取反,c语言0取反是多少

dfnjsfkhak 3 0

好,今天小编关注到一个比较意思的话题,就是关于c语言0取反的问题,于是小编就整理了2个相关介绍c语言0取反的解答,让我们一起看看吧。

  1. C语言的位运算中,~0为什么等于-1呢?怎么不是1呢?
  2. c语言编程,这里的-0U和1U什么什么意思?

C语言的位运算中,~0为什么等于-1呢?怎么不是1呢?

按位取反,0就是 32个0bit(针对int类型), 取反后是32个1bit即16进制的0xffff_ffff ,而-1==0xffff_ffff,所以0取反就是-1。

。。怎么算出来很简单计算机数据补码形式存储, -1对应的补码是1取反+1, 1取反==0xffff_fffe, 那么再+1就是 0xffff_ffff。。。

c语言编程,这里的-0U和1U什么什么意思?

这里书上打印错了, 应该是~0U, 意思就是无符号整型0, 然后~表示按位取反,最后的结果就是全是1,这个函数的作用是求出本台计算机中,unsigned型的数据是32位的还是别的。

c语言0取反,c语言0取反是多少-第1张图片-芜湖力博教育咨询公司
图片来源网络,侵删)

到此,以上就是小编对于c语言0取反的问题就介绍到这了,希望介绍关于c语言0取反的2点解答对大家有用

c语言0取反,c语言0取反是多少-第2张图片-芜湖力博教育咨询公司
(图片来源网络,侵删)

标签: 就是 语言