21xrx.com
2024-12-22 22:48:29 Sunday
登录
文章检索 我的文章 写文章
C++如何使用空格分隔输入的数组
2023-07-09 03:19:55 深夜i     --     --
C++ 空格 分隔 输入 数组

在C++编程中,我们经常需要从用户输入中读取一个数组。但是,输入的数组元素通常是通过空格分隔的。因此,在编写程序时,我们需要确定如何使用空格分隔输入的数组。

一种常见的方法是使用C++标准库中的istream_iterator类。这个类是一个输入迭代器,它可以帮助我们读取输入流中的值,并将它们分隔成一个容器(如数组)中的元素。

下面是一个简单的例子,演示如何使用istream_iterator类和vector容器来从用户输入中读取一个整数数组:


#include <iostream>

#include <iterator>

#include <vector>

using namespace std;

int main()

{

  vector<int> nums;

  copy(istream_iterator<int>(cin), istream_iterator<int>(), back_inserter(nums));

  for (int i : nums)

  

    cout << i << " ";

  

  cout << endl;

  return 0;

}

在这个例子中,我们首先创建了一个空的vector容器,然后使用copy函数将输入流中的整数值复制到vector中。这里需要注意的是,我们在第二个istream_iterator对象中不提供结束迭代器;这是因为istream_iterator类默认将输入流视为输入序列,以EOF作为输入流的结束符。

最后,我们使用一个范围for循环遍历容器,将每个元素输出到控制台上。

总的来说,在C++中使用空格分隔输入的数组可以使用istream_iterator类和容器来实现。这里我们使用vector容器,但你可以选择其他容器类型,如数组或链表。无论选择哪种方式,使用istream_iterator类都是非常方便和高效的。

  
  

评论区

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