乐趣区

关于c++:c中string的stoi函数

在学习 c ++ 的 stoi 函数时,遇到第二个参数不明确如何正确应用

int stoi (const string&  str, size_t* idx = 0, int base = 10)

后查找材料如下:

所以第二个参数的应用分两种状况:

 状况 1:用 0 或者 nullptr,示意不应用该参数(比拟常见)状况 2:搁置一个 size_t 类型的指针,str 调用 stoi 函数后,该指针指向 str 中第一个不为数字的下标

对状况 2 举个栗子:

#include<iostream>
#include<string>

using namespace std;
int main() {
    string s = "1345s3544";
    size_t n ;
    std::size_t* pos=&n;
    int m = stoi(s,pos,10);
    cout << *pos;
}

最终输入后果为 4

退出移动版