吃瓜第一名 发表于 2020-10-16 20:13:32

求解

求大佬解答,这里程序执行后为什么是0啊?


int main()
{
        char a = 255;
        a++;
        printf("a=%d\n",a);
        return 0;
}

昨非 发表于 2020-10-16 20:23:35

char型占一个字节,八个bit,2的8次方等于256,
char的最高位为符号位,因此char能表示-128~127
你的char值是256,换算到这个范围内就是0

pythonnulixuexi 发表于 2020-10-16 20:33:24

1. #include<stdio.h>
int main()
{
        char a='255';
        a++;
        printf("%d\n",a);
        return 0;
}
2.#include<stdio.h>
int main()
{
        int a=255;
        a++;
        printf("%d\n",a);
        return 0;
}
不知道你要问啥,就按照这个简单地写了两个你可能想写的
页: [1]
查看完整版本: 求解