读书人

帮忙看下这段代码明明照着书做的如

发布时间: 2012-03-31 13:13:26 作者: rapoo

帮忙看下这段代码,明明照着书做的,怎么没现象呢?

C/C++ code
using namespace std;istream &get (istream &in){    int val;    while (in >> val, !in.eof())    {        if (in.bad())        {            break;        }        if (in.fail())        {            cerr<<"ERROR"<<endl;            in.clear();            in.ignore(200,' ');            continue;        }    }    in.clear();    return in;}int main(){    int vv;    get(cin);    cin>>vv;    cout<<vv<<endl;        return 0;}


为什么执行后没输出呢?而且第一次EOF并不终止程序

[解决办法]
C/C++ code
using namespace std;int get (istream &in){    int val;    while (in >> val, !in.eof())    {        if (in.bad())        {            break;        }        if (in.fail())        {            cerr<<"ERROR"<<endl;            in.clear();            in.ignore(200,' ');            continue;        }    }    in.clear();    return val;}int main(){    int vv = get(cin);    cout<<vv<<endl;    return 0;}
[解决办法]
C/C++ code
int get (istream &in){    int val;    while (in >> val, !in.eof())    {        if (in.bad())        {            break;        }        if (in.fail())        {            cerr<<"ERROR"<<endl;            in.clear();            in.ignore(200,' ');            continue;        }    }    in.clear();    return val;}int main(){    cout<<get(cin)<<endl;    return 0;}
[解决办法]
探讨

书上写 cin>> vv 这句话是重新使用流,这是什么意思?

读书人网 >C++

热点推荐