#include <stdio.h>
void main()
{
int c1,c2;
c1=300;
c2=400;
printf("%c %c\n",c1,c2);
printf("%d %d\n",c1,c2);
}
因为你相当于输出了数字对应的ascii码,但这个ascii码可能是无效的
%C输出整型,溢出了。而且不是可见字符或字母数字,会不显示或乱码
你好同学,这个按照ascii输出是可以的(并不是乱码),只是超出了会按照一个周期输出对应的ascii字符。这个周期是256
你可以比较下面两个输出的结果是一致的:
printf("%c %c\n",c1,c2);
printf("%c %c\n",c1%256,c2%256);%取余运算
嗯,输出的是ascii码为44和144的字符。