今天遇到了一行代码
x[y[i]-48]++;
是关于char类型的‘1‘和int类型的1的转换
刚开始没看懂,后来想可能是它们的位数差了48
验证代码如下
#include<iostream>
using namespace std;
int main()
{
char a=‘1‘;
int i=1;
int s;
s=a-i;
cout<<s<<endl;
return 0;
}
输出:48
也就是说char ‘1’比int 1大了48,借此可以实现两者的快速转换
原文:https://www.cnblogs.com/zzh99/p/11714722.html