getline会生成一个包含一串从输入流读入的字符的字符串,直到以下情况发生会导致生成的此指笑耐字符串结束。1)到文件结束,2)遇到函数的定界符,3)输入达到最大限度。
函数原型:
(1)istream& getline (istream& is, string& str, char delim);
(2)istream& getline (istream& is, string& str);
其中:delim 为终结符,第二种形式 delim默认为 '\n'(换行符)。
例子:(2)
#include<iostream>
#include<fstream>
#include<string>
using namespace std;
int main()
{
string buff;
ifstream infile;
ofstream outfile;
cout<<"Input file name: "<<endl;
cin>>buff;
infile.open(buff.c_str());
if(!infile)
唯春 cout<<"error"<<buff<<endl;
cout<<"Input outfile name: "<<endl;
cin>>buff;
outfile.open(buff.c_str());
while(getline(infile, buff))
outfile<<buff<<endl;
升裂
infile.close();
outfile.close();
return 0;
}