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;
}



发布了50 篇原创文章 · 获赞 20 · 访问量 5万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章