3 回答
TA贡献1789条经验 获得超8个赞
这个是getline函数的原型及解释 怎么看着和你程序用法不太一样,特别是第二个参数的用法。
istream &getline( char *buffer, streamsize num, char delim );
getline()函数用于输入流,读取字符到buffer中,直到下列情况发生:
num - 1个字符已经读入,
碰到一个换行标志,
碰到一个EOF,
或者,任意地读入,直到读到字符delim。delim字符不会被放入buffer中。
这个是eof的原型和解释 还有一个小例子
语法:
bool eof();
如果到达相关联的输入文件的末尾,eof()函数返回true,否则返回false。
例如:
char ch;
ifstream fin( "temp.txt" );
while( !fin.eof() ) {
fin >> ch;
cout << ch;
}
fin.close();
TA贡献1827条经验 获得超7个赞
1、istream &getline( char *buffer, streamsize num, char delim );
getline()函数用于输入流,读取字符到buffer中,直到下列情况发生:
num - 1个字符已经读入,
碰到一个换行标志,
碰到一个EOF,
或者,任意地读入,直到读到字符delim。delim字符不会被放入buffer中。
2、这eof的原型和解释 :
语法:
bool eof();
如果到达相关联的输入文件的末尾,eof()函数返回true,否则返回false。
例如:
char ch; ifstream fin( "temp.txt" ); while ( !fin.eof() ) { fin >> ch; cout << ch; } fin.close(); |
TA贡献1804条经验 获得超7个赞
1、c++示例:
#include<iostream> #include<fstream> using namespace std; int main() { string textline[200]; //欲读200行,自己定义 int i=0,ii=0; ifstream fin( "d:/test.txt" ); for (;!fin.eof();) //非文件尾部继续读 { getline(fin,textline[i], '\n' ); //遇到换行符读一行。 i++; } for ( int ii=0;ii<i;ii++) cout<<textline[ii]<< '\n' ; return 0; } |
2、eof()读到文件尾部返回真,非文件尾部返回假。
3、getline()按行读取文本。
- 3 回答
- 0 关注
- 266 浏览
添加回答
举报