21xrx.com
2025-04-15 02:12:40 Tuesday
文章检索 我的文章 写文章
如何将string转换为int:C++教程
2023-07-02 07:21:17 深夜i     11     0
string 转换 int C++ 教程

在C++中,将字符串(string)转换为整数(int)是一项基本操作。这种转换可以帮助您将用户输入、文件读取或其他类型的字符串转换为可以进行算术运算或其他类型操作的数字型变量。以下是一些实现字符串到整数转换的方法。

使用stoi函数

C++11及更高版本提供了一个名为stoi的内置函数,可将字符串转换为整数。 这个函数可以接受许多参数,并在错误的情况下抛出异常。以下是使用stoi函数将字符串转换为整数的示例代码:

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

使用stringstream类

C++标准库提供了一个名为stringstream的类,它可以将字符串转换为整数。使用这个类的好处是,您可以在代码中进行各种其他类型的转换,而不仅仅是字符串转换为整数。 下面是一个使用stringstream的实例:

#include <iostream>
#include <sstream>
#include <string>
using namespace std;
int main()
{
  string str = "123";
  stringstream ss(str);
  int num = 0;
  ss >> num;
  cout << "Converted number: " << num << endl;
  return 0;
}

手动转换

如果你不想使用内置函数或类来实现字符串转换到整数,你可以使用循环对每个字符进行迭代,并将其转换为整数。这需要一些细心,但是它也是一个有效的技术。下面是手动转换的示例代码:

#include <iostream>
#include <string>
using namespace std;
int main()
{
  string str = "123";
  int num = 0;
  for (int i = 0; i < str.size(); i++)
  {
    num = num * 10 + (str[i] - '0');
  }
  cout << "Converted number: " << num << endl;
  return 0;
}

无论你选择哪种方法,都可以将字符串转换为整数。记住检查您的代码以确保输入的字符串是正确的格式,并处理任何错误或不正确的输入。

  
  

评论区