首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

帮忙看下这段代码,明明照着书做的,如何没现象呢

2012-03-31 
帮忙看下这段代码,明明照着书做的,怎么没现象呢?C/C++ codeusing namespace stdistream &get (istream &i

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

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 这句话是重新使用流,这是什么意思?

热点排行