首先我们来看一段代码:
#include<stdio.h>
int main()
{
int num=97;
printf("num=%d,num=%c",num,num);
return 0;
}
运行结果为:
如上所示,在对于一个int数值进行以不同的占位符进行打印时,所打印出来的结果却不同,其本质原因是char类型的字符在计算机中是以数字进行存储的,因此当我们输入的数字在ASCLL码表中,并以%c进行占位时,打印的是ASCLL码表中的数字所对应的字符。
#include<stdio.h>
int main()
{
char ch = 'a';
printf("ch在ASCLL码表中的数字是%d\n其字符为%c",ch,ch);
return 0;
}