int转string
- 使用std::to_string(int),返回一个转换好的string字符串;
#include <string> // string, std::to_string
using namespace std;
int main(){
int n=100;
string str=to_string(n);
return 0;
- itoa函数,非C/C++标准,可移植性不好;
- 使用stringstream,比较简便,但比较慢;
#include <sstream> //stringstream
#include <string> //string
using namespace std;
int main(){
stringstream ss;
string str;
int n=100;
ss<<n;
ss>>str;
return 0;
}
- 使用C库函数sprintf(),可以转化各种进制的数,但缺点是需要提前分配好char数组;
#include <string> // string, sprintf
#include <cstring> // strlen(linux)
using namespace std;
int main() {
int n = 100;
char ch[10];
sprintf(ch, "%d", n);
//下面把c_string转换成string
string str(ch, ch + strlen(ch));
return 0;
}
string转int
- atoi函数:需要传入的是c_str串;
string a = "123";
a.c_str();
int b = atoi(a.c_str());
2.stoi函数:直接传入string字符串即可;
string a = "123";
int b = stoi(a);