先示范两种最后舍弃了的:
1.网上的cin.eof()
#include<iostream>
using namespace std;
int main(){
int s;
while(!cin.eof()){
cin>>s
cout<<"1";
}
return 0;
}
测试结果:
^z
1
25
1
^z
1
解释:
执行循环时未执行输入操作,执行循环时才输入eof,所以终止会比我们想要的晚一轮。
#include<iostream>
using namespace std;
int main(){
int s;
while(!cin.eof()){
cout<<"1";
}
return 0;
}
若去掉cin>>s,运行时它疯狂输出11111111111我也不造为啥
2.
#include<iostream>
using namespace std;
int main(){
int s;
while(cin.get()!=EOF){
cout<<"1";
}
return 0;
}
测试结果:
^z
25[ENTER]
1