21xrx.com
2024-12-22 20:07:22 Sunday
登录
文章检索 我的文章 写文章
C++如何用逗号隔开输入的字符串
2023-07-01 03:20:31 深夜i     --     --
C++ 逗号 输入字符串 分隔

对于C++程序员来说,在处理字符串时,通常需要从输入流读取一串字符,并将其解析为单个字段。在这种情况下,使用逗号作为分隔符是非常常见的。下面是C++中如何使用逗号作为分隔符来读取一串字符的方法:

1. 读取整个字符串

首先,我们需要使用C++的标准输入流(std::cin)来获取整个字符串,可以使用getline()函数,该函数可以帮助我们从输入流中读取一行文本,并将其存储在一个字符串变量中。假设我们的输入是以下一行字符串:

"John Smith,27,Male,Programmer"

我们可以使用如下的代码来获得整个字符串:


std::string inputString;

std::getline(std::cin, inputString);

2. 解析字符串

接下来,我们需要将输入的字符串转换为一个包含字段的向量。为了解析字符串,我们可以使用C++标准库提供的stringstream类,它可以将一个字符串分解成若干个字段。

下面是使用stringstream类解析输入字符串的方法:


#include <vector>

#include <string>

#include <sstream>

int main()

{

  std::string inputString;

  std::getline(std::cin, inputString);

  

  std::vector<std::string> fieldVector;

  std::stringstream ss(inputString);

  std::string field;

  

  while (std::getline(ss, field, ','))

  {

    fieldVector.push_back(field);

  }

  // 接下来,您可以使用该fieldVector向量来访问每个字段

  // fieldVector[0] = "John Smith"

  // fieldVector[1] = "27"

  // fieldVector[2] = "Male"

  // fieldVector[3] = "Programmer"

  return 0;

}

以上代码可输出以下结果:

fieldVector[0] = "John Smith"

fieldVector[1] = "27"

fieldVector[2] = "Male"

fieldVector[3] = "Programmer"

总体而言,使用stringstream类和getline()函数,将输入的字符串分解为逗号分隔的字段,是C++程序员处理字符串的一个非常常用的方法。这种方法在数据处理和解析时也非常有用,例如在读取CSV文件时。

  
  

评论区

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