int main()
{
char a=-1;
1000 0000 0000 0000 0000 0000 0000 0001 原码
1111 1111 1111 1111 1111 1111 1111 1110 反码
1111 1111 1111 1111 1111 1111 1111 1111 补码
取后8位 1111 1111
输出时整型提升 1111 1111 1111 1111 1111 1111 1111 1111 此时仍为补码
原码得到-1
signed char b=-1; 和上面的一样
unsigned char c=-1;
补码取后八位 1111 1111
输出时因为是无符号数得到 0000 0000 0000 0000 0000 0000 1111 1111
原码也是他 得到255
printf("%d %d %d",a,b,c);
return 0;
}