火车驶向云外.11 2022-10-30 09:16 采纳率: 93.3%
浏览 32
已结题

这个程序为什么会进入死循环输出*?

img


这个程序为什么b的值最后为-1?
下面的*为什么会进入死循环?

  • 写回答

3条回答 默认 最新

  • Java冰激凌 2022-10-30 09:40
    关注

    建议博主学习一下进制转换与原码反码补码 当发生截断时,11111111 为-1的原码 ,所以b的值为-1
    如果为无符号时,例如11111111 首位就不当做符号位了,所有的都算是值,当被减到00000000再减一次11111111 按照无符号计算值为255 由此进入了死循环

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 11月7日
  • 已采纳回答 10月30日
  • 创建了问题 10月30日