目前就总结了两种方法:
第一种方法:
将字符转换成数字:
char c='h' ;
int a,b ;
a=int(c); //字符c转换成数字a
b=int(c)-97 ; //将字符c转换成在26个小写英文字母中的位置
cout<<a<<endl<<b<<endl ;
运行后输出的a的结果是:
也就是说将上述将字符转换成数字的方法中,a表示的是c的ASCII码即'h'的ASCII码,而b表示的是c即'h'在26个小写英文字母中的位置,如果要转换成26个大写英文字母中的位置的话,只需要将减去数字97换成减去65。
将数字转换成字符:
int a=107;
char b;
b=(char)(a);//将数字a转换成字符b
cout<<b<<endl;
运行后输出的b的结果是:
b表示将数字a即107转换成ASCII中十进制代表的字符'k'。
第二种方法:
将字符转换成数字:
char c='h';
int a,b;
b=c-'a';//将字符c转换成整数b
cout<<b<<endl;
运行后的结果:
将小写字符c即'h'转换成在26个小写字母中的位置,如果要将大写字母转换的话,只需要将减去的小写字母'a'换成大写字母'A'。
将数字转换成字符:
int b=107;
char c;
c=b;//将数字b强行转换成字符c
cout<<c<<endl;
输出的结果:
不得不说,强行转换有时候也挺好用的。