中易网

c语言有符号整型数与无符号整型数相加得到什么呀

答案:5  悬赏:0  
解决时间 2021-01-14 15:01
  • 提问者网友:爱了却不能说
  • 2021-01-14 07:07
c语言有符号整型数与无符号整型数相加得到什么呀
最佳答案
  • 二级知识专家网友:我住北渡口
  • 2021-01-14 08:36
a+b默认返回的是无符号数,如果这样得到的是一个有符号数 int c;c=a+b;当然c>0,但a+b>0因为结果作为一个无符号数已经溢出了,所以又加了65536结果变成一个正数了
全部回答
  • 1楼网友:轻雾山林
  • 2021-01-14 11:55
把无符号数转换为有符号数再相加。在这里,a+b=-6。则其与0的关系就显而易见了。
  • 2楼网友:独行浪子会拥风
  • 2021-01-14 11:26
如果你定义int c=a+b;c=-6
如果unsigned int d=a+b;会溢出
  • 3楼网友:轮獄道
  • 2021-01-14 10:56
反正我用int i=-7;unsigned int j=5;printf("%d",(i+j));
最后输出-2.。。。。
  • 4楼网友:零点过十分
  • 2021-01-14 09:17
a+b默认返回的是无符号数,如果这样得到的是一个有符号数 int c;c=a+b;当然c<0,但a+b>0因为a+b=-6带有符号,已经超出了无符号数所能表示的范围了,在内存中存储的16进制补码形式为FFFA,即65530>0。

参考资料:来自上一个回答

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息