在VC++上进行编译时系统会给出警告(warning):“把一个常整数赋值给char变量”,表示255已经超过char变量的数值允许范围,运行时输出-1,说明VC++把char默认为signed char类型,如果把第一行改为:unsigned char c=255; ,则不出现警告,且输出255。
char c=255;
printf("%d\n",c);
输出:-1
unsigned char c=255;
printf("%d\n",c);
输出:255;
在VC++上进行编译时系统会给出警告(warning):“把一个常整数赋值给char变量”,表示255已经超过char变量的数值允许范围,运行时输出-1,说明VC++把char默认为signed char类型,如果把第一行改为:unsigned char c=255; ,则不出现警告,且输出255。
char c=255;
printf("%d\n",c);
输出:-1
unsigned char c=255;
printf("%d\n",c);
输出:255;