在学习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