帮忙看下这段代码,明明照着书做的,怎么没现象呢?
- 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;}
[解决办法]