问题
scanf以不同于变量类型的格式描述符输入时,是怎么运作的?有个同学问了我这样的代码,一时间想不到原因。
代码
int main()
{
int x;
char y,z;
scanf("%c%c%d",&x,&y,&z);
printf("\tAscii\tchar\n");
printf("x:\t%d\t%c\n",x,x);
printf("y:\t%d\t%c\n",y,y);
printf("z:\t%d\t%c\n",z,z);
return 0;
}
输入
96 97 98
运行结果:
环境
Windows 10
MinGW GCC 11.2.0 64-bit Debug