永发信息网

int b = 0xffffffff; printf("a=%u, b=%d\n", a, b); 为什么输出 b=-1?

答案:2  悬赏:20  手机版
解决时间 2021-02-16 10:09
  • 提问者网友:你独家记忆
  • 2021-02-15 11:13
int b = 0xffffffff; printf("a=%u, b=%d\n", a, b); 为什么输出 b=-1?
最佳答案
  • 五星知识达人网友:夜余生
  • 2021-02-15 12:49
因为b本来就是-1
b作为一个有符号整形, 最高位是符号位, 0表示整数, 1表示负数, 当全部二进制都是1的时候, 就是二进制的-1
全部回答
  • 1楼网友:梦中风几里
  • 2021-02-15 13:07
虽然我很聪明,但这么说真的难到我了
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯