RealDavidLiu 2020-01-06 17:32 采纳率: 40%
浏览 643

运算符~的作用是什么?

书上讲运算符~的作用是取反码,但是我用编译器打印出~1的结果是-2.
按理说正数的反码应该就是它本身,即1的反码就是1.
请问各位大佬,我哪里理解出了错?

  • 写回答

1条回答

  • bobhuang 2020-01-06 18:08
    关注

    计算的时候用的是 int吧。假设int在你的环境中是4个字节(32位),则第一位是符号位。
    1 = 0x00000001,
    ~1 = 0xfffffffe,
    正好对应的是补码表示的-2

    评论

报告相同问题?

悬赏问题

  • ¥15 STM32驱动继电器
  • ¥15 Windows server update services
  • ¥15 关于#c语言#的问题:我现在在做一个墨水屏设计,2.9英寸的小屏怎么换4.2英寸大屏
  • ¥15 模糊pid与pid仿真结果几乎一样
  • ¥15 java的GUI的运用
  • ¥15 Web.config连不上数据库
  • ¥15 我想付费需要AKM公司DSP开发资料及相关开发。
  • ¥15 怎么配置广告联盟瀑布流
  • ¥15 Rstudio 保存代码闪退
  • ¥20 win系统的PYQT程序生成的数据如何放入云服务器阿里云window版?