21xrx.com
2025-02-16 22:03:38 Sunday
登录
文章检索 我的文章 写文章
C++中使用stoi头文件的方法
2023-07-05 00:45:19 深夜i     --     --
C++ stoi 头文件 方法

在C++中,stoi是一个用于将字符串转化为整数的函数。它包含在头文件 中,并且在C++11标准中引入。该函数的语法如下:

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

其中,str是需要转换的字符串,idx是可选的参数,用于返回转换后第一个非数字字符的位置,base是进制数,默认为10,表示十进制。

下面是一个使用stoi函数的例子:


#include <iostream>

#include <string>

using namespace std;

int main()

{

 string str="123";

 int num;

 num = stoi(str);

 cout << num << endl;

 str = "10110";

 num = stoi(str,0,2);

 cout << num << endl;

 return 0;

}

在这个例子中,我们分别将字符串"123"和"10110"转换为整数类型。第一个stoi函数使用默认进制(十进制),而第二个函数指定了一个二进制的进制数。

在实际使用过程中,我们需要注意的是,在输入的字符串不包含数字字符时,该函数会产生一个无效的参数异常。因此,我们需要使用try-catch语句来处理这种异常,如下所示:


#include <iostream>

#include <string>

using namespace std;

int main()

{

 try {

  string str = "ABC";

  int num = stoi(str);

  cout << num << endl;

 }

 catch (const invalid_argument& ia) {

  cerr << "Invalid argument: " << ia.what() << endl;

 }

 return 0;

}

这个例子中,我们将一个非数字字符串传递给stoi函数。在这种情况下,程序会抛出一个invalid_argument异常,并输出错误消息:“Invalid argument: stoi”。

使用stoi函数可以方便地将字符串转换为整数类型。但使用时需要注意进制和处理异常的情况。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复