int----string相互转换

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码对应的值。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值