请问C++中EOF怎么结束?已经连续按了ctrl+z了
今天我编了个计算文章行数、字符数的程序,里面的do while 循环要用EOF结束。可是运行后我按了CTRL+Z、CTRL+D等全部组合键都不能结束。#include <iostream>
using namespace std;
int main()
{
int word,line,ch,isword=0;
char c;
do{
c=cin.get();
if(c=='\n') line++;
if(c!='\n'&&c!='t'&&c!=' ')
{
ch++;
if(isword==0) word++;
}
isword=1;
}while(c!=EOF);
cout<<"line="<<line<<endl;
cout<<"word="<<word<<endl;
cout<<"ch="<<ch<<endl;
return 0;
}#include <iostream>
using namespace std;
int main()
{
int word,line,ch,isword=0;
char c;
do{
c=cin.get();
if(c=='\n') line++;
if(c!='\n'&&c!='t'&&c!=' ')
{
ch++;
if(isword==0) word++;
}
isword=1;
}while(c!=EOF);
cout<<"line="<<line<<endl;
cout<<"word="<<word<<endl;
cout<<"ch="<<ch<<endl;
return 0;
}
这是我连续按了几个CTRL+Z的情景 PS:我是在虚拟机里面做的,不知道又没有影响。