关于输入结束EOF
程序代码:
#include <iostream> #include <fstream> #include <string> using namespace std; int main() { int sum = 0; if(!cin.good()) { cout<<"input bad!"<<endl; exit(1); } int number; while(1) { cin>>number; if(cin.good()) { sum += number; } else if(cin.eof()) { break; } else { cin.clear(); string badtoken; getline(cin, badtoken); cerr<<"warning!"<<badtoken<<endl; } } cout<<"sum is"<<sum<<endl; return 0; }为什么我需要按2次ctrl+z才能结束,以前用到EOF也遇到过类似问题,这次提出来问问,求解!