输出函数的一点疑问
#include<stdio.h>main()
{
char ch1,ch2;
ch1='a'; ch2='B'; /*给ch1、ch2赋值*/
printf("ch1=%c,ch2=%c\n",ch1-32,ch2+32);
}
输出结果是
ch1=A,ch2=b
输出函数后面的我知道减去数字,就是大小写变化,但是前面红字标注的我不知道怎么回事?大大们帮忙解释下!
#include<stdio.h>//这个程序就是一个给字符变量赋值,然后通过ASII码运算 ,再输出的一个程序。 main()//主函数 { char ch1,ch2;//定义了两个字符变量 ch1='a'; ch2='B'; //给ch1、ch2分别赋值a,B.需要说明的是,在ASII码表中a=97,A=65,b=98,B=66.你发现了什么?97-32=65.这么说你应该能明白了吧。 printf("ch1=%c,ch2=%c\n",ch1-32,ch2+32); //ch=是原样输出,%c则是告诉电脑,这个输出以字符型输出。遇到\n则换行。 } 输出结果是 ch1=A,ch2=b