普通读入的时候会以空格作为分隔符
直接用cin>>s读入,此时可以直接处理文件尾的情况
text代码:
#include <iostream>
#include <cstdio>
#include
<string>
using namespace std;
int main()
{
//freopen("case.txt","r",stdin);
string s;
while(cin>>s)
cout<<"String:"<<s<<endl;
cout<<"End"<<endl;
}
运行结果:
fjdsoai gasodijga
gdsaoi
String:fjdsoai
String:gasodijga
String:gdsaoi
^Z
End
行读入用getline
#include <iostream>
#include <cstdio>
#include
<string>
using namespace std;
int main()
{
//freopen("case.txt","r",stdin);
string s;
while(getline(cin,s))
cout<<"String:"<<s<<endl;
cout<<"End"<<endl;
}
运行结果:
abacadsf
String:abacadsf
asdg gadsg
String:asdg gadsg
gaosd gsad
gsad gasdg
String:gaosd gsad gsad gasdg
^Z
End
行读入同时可以直接处理文件末尾的EOF
以上两个经 freopen 重定向到文件后同样的结果。
string行读入&&文件输入,布布扣,bubuko.com
原文:http://www.cnblogs.com/someblue/p/3597804.html