int转换成string
int stoi(string s){
int ans=0;
for(int i=0;i<s.length();++i){
ans=10*ans+s[i]-48;//之所以会减去48是因为要将char转换成为int
}
return ans;
}
当然要是‘0’的ASCII码值不确定,也可以这样写:
int stoi(string s){
int ans=0;
for(int i=0;i<s.length();++i){
ans=10*ans+s[i]-'0';//之所以会减去48是因为要将char转换成为int
}
return ans;
}
string转换成int
string itos(int num){
string s;//这是一个字符串数组,即里面的元素都是字符串。
while (num > 0) {
s = char(num % 10 +'0' ) + s; // 将数字转换为字符并拼接到结果前面
num /= 10;
}
return s;
}
char(num%10+‘0’),首先我们需要知道char类型和int类型想做运算是低类型向高类型转换。即char类型向int类型转换。num%10+‘0’这里的‘0’虽然是字符类型,但是在进行int类型时,其int值为0所对应的ASCII码对应的值。