c=127 c=c+1 最后为什么c=-128
答案:2 悬赏:80 手机版
解决时间 2021-11-16 23:25
- 提问者网友:刺鸟
- 2021-11-16 19:05
c=127 c=c+1 最后为什么c=-128
最佳答案
- 五星知识达人网友:纵马山川剑自提
- 2021-11-16 19:41
char类型只占用一个字节,取值范围在-128~127之间,127+1的结果为128,导致c字节的最高位为1,而这在二进制中属于符号位,最高位为1时,表示负数,所以就变成了-128。
如果想表示一个无符号的数,可以定义为:
unsigned char c;
这时c的取值范围就变成了0-255,可以正确表示大于127的正整数。
如果想表示一个无符号的数,可以定义为:
unsigned char c;
这时c的取值范围就变成了0-255,可以正确表示大于127的正整数。
全部回答
- 1楼网友:迟山
- 2021-11-16 20:25
你必须明白“溢出“才能真正懂这个问题。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯