string 和 int之间的转化


int转换为string

#include <iostream>
/*
#include <sstream>
using namespace std;


int main()
{
	//第一种:使用itoa
	int aa = 30;
	char c[8];
	itoa(aa, c, 10);//此函数是c语言的函数,只能在windows下使用
	cout<<c<<endl;


	//第二种方法:使用sprintf
	int ab = 31;
	char c1[8];
	int length = sprintf(c1, "%d", ab);
	cout<<c1<<endl;


	//第三种方法:使用stringstream
	int ac = 32;
	stringstream ss;


	ss<<ac;
	string m = ss.str();
	cout<<m<<endl;


	//第四种方法:使用lexical_cast
	int ad = 33;
	//string n = boost::lexical_cast<string>(33);//这里必须下载boost库才能使用
	cout<<n<<endl;
}
*/ 
//String转化为int

#include <iostream>
#include <sstream>
using namespace std;


//String转化为int
int main()
{
	string s = "20";
	char* b;

	const char *k = "25";
	cout<<atoi(k)<<endl;//此函数是c语言的函数,只能在windows下使用

	//方法一 使用strtol
	int i = static_cast<int>(strtol(s.c_str(), &b, 10));
	cout<<i<<endl;

	//方法二 使用sscanf
	int j;
	sscanf("17", "%D", &j);
	cout<<j<<endl;

	//方法三 使用stringstream
	string s1 = "54";
	stringstream ss;
	ss<<s1;

	int n;
	ss>>n;
	cout<<n<<endl;

	//方法四
	//string s2 = "69";
	//int m = boost::lexical_cast<int>(s2);
	//cout<<m<<endl;
	return 0;
}



  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值