holyya.com
2025-09-04 13:01:43 Thursday
登录
文章检索 我的文章 写文章
C++:字符串转换成整数
2023-06-23 19:16:57 深夜i     --     --
C++ 字符串转换 整数

在 C++ 编程中,有时需要将字符串转换成整数。C++ STL 中的 `stoi` 函数非常方便地实现了这一过程。

`stoi` 函数原型如下:


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

该函数的第一个参数为要转换的字符串,第二个参数为一个指向 `size_t` 类型的指针,该指针可以接收函数成功转换的最后字符位置的下标。第三个参数为要转换的数字的进制,默认为十进制。

在使用 `stoi` 函数进行字符串转换时,需要注意以下几点:

1. 输入字符串必须为合法的整数字符串,否则会抛出 `invalid_argument` 异常。

2. 输入字符串的长度要小于等于 `int` 类型的最大值,否则会抛出 `out_of_range` 异常。

3. 对于非法的字符串,可以通过 `try-catch` 机制进行异常处理。

下面是一个使用 `stoi` 函数进行字符串转换的示例代码:


#include <iostream>

#include <string>

using namespace std;

int main() {

  string str = "123456";

  int num = stoi(str);

  cout << num << endl;

  return 0;

}

运行结果:


123456

在这个示例中,我们将字符串 "123456" 转换为了整数类型,并将其输出到控制台。

在实际应用中,我们可能需要对输入字符串进行更多的检查和处理,以确保转换的正确性和稳定性。不过使用 `stoi` 函数可以快速地实现字符串到整数的转换,大大提高了编程效率。

  
  

评论区

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