c++ string to integer stoi

在 C++ 中,可以使用 stoi() 函数将字符串类型的数字转换为整数类型。该函数需要两个参数,第一个参数是待转换的字符串,第二个参数是用于指定转换基数的整数类型的变量。例如:

#include <iostream>
#include <string>
using namespace std;
int main() {
    string str = "123";
    int num = stoi(str);
    cout << num << endl;
    return 0;

在上面的代码中,我们使用 stoi() 函数将字符串 str 转换为整数类型 num,并将其输出到控制台上。由于没有指定转换基数,因此默认使用十进制进行转换。

需要注意的是,如果待转换的字符串中包含非数字字符,或者超出了整数类型的表示范围,将会抛出 invalid_argumentout_of_range 异常。因此,在使用 stoi() 函数进行字符串转换时,需要确保待转换的字符串符合要求,或者使用异常处理来避免程序崩溃。

另外,在 C++11 中,还可以使用 std::stoi() 函数来执行字符串到整数的转换,该函数和上述示例中的 stoi() 函数作用相同,但是需要显示指定命名空间 std,例如:

#include <iostream>
#include <string>
using namespace std;
int main() {
    string str = "123";
    int num = std::stoi(str);
    cout << num << endl;
    return 0;