在C++的string库函数中,可以使用std::stoi
函数将字符串转换为数字。
std::stoi
函数的原型如下:
int stoi(const string& str, size_t* idx = 0, int base = 10);
其中,str
是要转换的字符串,idx
是指向字符串中第一个非数字字符的位置的指针,默认为0,base
是数字的基数,默认为10。如果字符串表示的是十六进制数,则base
应该设置为16。
例如,将字符串"123"转换为数字:
#include <iostream>
#include <string>
using namespace std;
int main() {
string str = "123";
int num = stoi(str);
cout << num << endl; // 输出123
return 0;
}
如果字符串中包含非数字字符,std::stoi
函数将抛出std::invalid_argument
异常。可以使用try/catch
语句来处理这种异常。