首页 新闻 搜索 专区 学院

关于C++流迭代器的问题,输入流迭代器吞输入

0
悬赏园豆:5 [待解决问题]
int main()
{
    int n;
    istream_iterator<int> in_iter(cin), eof;
    //这里会吞掉第一个输入,进入到vec中,不理解
    while(cin >> n)
    {
        cout << n <<endl;
    }
    cin.clear();
    vector<int> vec(in_iter, eof);
    for(auto i = 0; i < vec.size(); ++i)
    {
        cout << vec[i] << endl;
    }
}

Windows下,如果输入是 `1`+ CtrlZ + CtrlZ

还是会存入1进入vector,总会吞入第一个输入。不知道原因。

Aoxuets的主页 Aoxuets | 初学一级 | 园豆:197
提问于:2018-01-11 13:02
< >
分享
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册