快捷搜索: 王者荣耀 脱发

C++中int型和string型的相互转换

一、int型转string型

1、to_string函数,头文件#include<string>

c++11标准增加了全局函数std::to_string:

string to_string (int val);

string to_string (long val);

string to_string (long long val);

string to_string (unsigned val);

string to_string (unsigned long val);

string to_string (unsigned long long val);

string to_string (float val);

string to_string (double val);

string to_string (long double val);

例子:

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

int main() {
    int a = 88;
    string ss = to_string(88) + "helloworld";
    cout << ss <<endl;
    return 0;
}

 二、string型转int型

1、atoi()函数,头文件#include<string>

atoi()函数的参数是const char*类型,如果将string字符串转换为int,需要先通过c_str()函数先将string转换为const char*类型,不然会报错的:

正确实例:

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

int main() {
    string ss = "123456";
    cout << atoi(ss.c_str()) << endl;
    return 0;
}

2、stoi()函数,头文件#include<string>,建议用stoi()函数,方便

stoi()的参数是const string&,不需要转换为const char*

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

int main() {
    string ss = "123456";
    cout << stoi(ss) << endl;
    return 0;
}
经验分享 程序员 微信小程序 职场和发展