+ -
当前位置:首页 → 问答吧 → 菜鸟求助一个问题,有关io的

菜鸟求助一个问题,有关io的

时间:2011-12-24

来源:互联网

先看代码吧:
get.cpp(申明再get.h中)
C/C++ code
#include <iostream>
using namespace std;
istream& get(istream& gt)
{
    string str;
    while(gt>>str)
    {
        cout<<str<<endl;
    }
    return gt;
}


main.cpp
C/C++ code
#include <iostream>
#include "get.h"
using namespace std;

int main()
{
    int ival;
    get(cin);
    cin>>ival;          //这一句怎么没有执行,后面直接输出了一个任意数
    cout << ival<< endl;
    return 0;
}



作者: itelly   发布时间: 2011-12-24


  get(cin);
后面,加一个
  cin.clear(); //清cin状态,不然,cin的EOF为ture,后面的读不到数据了

作者: keiy   发布时间: 2011-12-24

C/C++ code

    get(cin); 
    cin.clear();
。。。。。。

作者: zmlovelx   发布时间: 2011-12-24

引用 1 楼 keiy 的回复:


get(cin);
后面,加一个
cin.clear(); //清cin状态,不然,cin的EOF为ture,后面的读不到数据了

管用,谢谢哈。

作者: itelly   发布时间: 2011-12-25

引用 1 楼 keiy 的回复:

get(cin);
后面,加一个
cin.clear(); //清cin状态,不然,cin的EOF为ture,后面的读不到数据了
++

作者: quwei197874   发布时间: 2011-12-25