21xrx.com
2025-03-29 09:38:33 Saturday
文章检索 我的文章 写文章
C++编程技巧:如何使用逗号隔开输入的数据
2023-07-08 04:36:53 深夜i     122     0
C++ 编程技巧 逗号隔开 输入数据

在进行C++编程时,经常需要读取多个数据,而这些数据通常是使用逗号进行分隔的。如果不知道如何使用逗号隔开输入的数据,就会导致代码出现错误或无法达到期望的效果。下面就介绍几种常用的方法,来帮助您使用逗号隔开输入的数据。

第一种方法是使用cin.get()函数。这个函数可以读取一个字符,我们可以使用while循环来读取输入的数据,然后在输入逗号的位置将字符串分割。如下面的代码实现:

#include<iostream>
#include<cstring>
using namespace std;
int main()
{
  char str[100];
  cin.getline(str,100);
  char *pch;
  pch=strtok(str,",");
  while(pch!=NULL)
  {
   cout<<pch<<endl;
   pch=strtok(NULL,",");
  }
  return 0;
}

上面的代码中,首先使用了cin.getline()函数读取输入的整个字符串,然后使用strtok()函数将字符串分割。pch指针按照逗号的位置指向不同的字符串片段,输出各个片段即可。

第二种方法是使用istringstream类。这个类可以将一个字符串转化为多个变量。如下面的代码实现:

#include<iostream>
#include<sstream>
#include<string>
using namespace std;
int main()
{
  string str="apple,banana,orange";
  istringstream ss(str);
  string s1,s2,s3;
  getline(ss,s1,',');
  getline(ss,s2,',');
  getline(ss,s3,',');
  cout<<s1<<endl;
  cout<<s2<<endl;
  cout<<s3<<endl;
  return 0;
}

上面的代码使用了istringstream类将输入的字符串转化为多个变量。其中getline()函数的第三个参数为逗号,表示分割符号。这样就可以按照顺序获得各个子字符串,并输出它们。

综上所述,使用逗号隔开输入的数据,可以采用cin.get()函数或istringstream类将整个字符串转化为多个变量,然后输出它们。相信掌握了这个技巧,您的C++编程将更加便捷和高效。

  
  

评论区

请求出错了