#include<stdio.h> main() { char a; a=255; printf("%d尀n",a++); } 结果是:-1

为什吗是这个答案,求详解!谢谢咯!
2025-03-23 04:03:49
推荐回答(2个)
回答1:

a++没有用,他返回的是++之前的值,还是255.
char是一个8位的有符号类型,他的取值范围是-128 ~ 127,当超过最大值时,自动从最小值开始往上加,也就是说如果a=128,那么他实际上是-128。
255 = 128 + 127 = -128 + 127 = -1

回答2:

char 范围 8 -2^7 ~ 2^7-1 最大数到了,从最小数继续------溢出