21xrx.com
2025-04-15 02:32:17 Tuesday
文章检索 我的文章 写文章
C++中如何将string转为int?
2023-07-08 18:08:09 深夜i     12     0
C++ string int 转换 方法

在C++中,将字符串转换为整数(int)是一种常见的需求。这是因为当我们从用户那里获取输入时,输入通常是字符串类型。此外,在进行许多计算和操作时,我们需要将字符串转换为整数类型。因此,我们需要了解如何将字符串转换为整数。

下面是一些常见的方法:

1. 使用stoi函数

C++标准库中的stoi函数(字符串转换为整数)可以将字符串转换为int类型。stoi函数将字符串作为参数并返回一个整数。以下是该函数的语法:

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

其中,参数str是要转换的字符串,参数pos是要从哪里开始解析字符串的指针,参数base是要使用的进制数。

以下是一个将字符串转换为整数的示例:

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

2. 使用stringstream

C++中的stringstream类可以将字符串转换为整数类型。stringstream类类似于字符串流,它提供了将字符串转换为其他数据类型的方法。以下是一个用stringstream类将字符串转换为整数的示例:

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

3. 使用atoi函数

C++标准库中的atoi函数(将字符串转换为整数)可以将字符串转换为int类型。以下是该函数的语法:

int atoi(const char* str);

其中,参数str是要转换的字符串。

以下是一个使用atoi函数将字符串转换为整数的示例:

#include <iostream>
#include <cstdlib>
using namespace std;
int main()
{
  const char* str = "123";
  int num = atoi(str);
  cout << num << endl;
  return 0;
}

这些都是将字符串转换为整数类型的简单方法。在编写C++程序时,我们通常会用到这些方法中的一个或多个。因此,了解如何将字符串转换为整数类型是非常重要的。

  
  

评论区

请求出错了