我在windows xp上使用Dev C ++
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main ()
{
string STRING;
ifstream infile;
infile.open ("sample.txt");
while(!infile.eof)
{
getline(infile,STRING);
cout<<STRING;
}
infile.close();
return 0;
}
此代码会出现以下错误
C:\C++\read.cpp: In function `int main()':
C:\C++\read.cpp:11: error: could not convert `infile.std::basic_ios<_CharT, _Traits>::eof [with _CharT = char, _Traits = std::char_traits<char>]' to `bool'
C:\C++\read.cpp:11: error: in argument to unary !
我不确定这里有什么问题我无法编译代码 请帮忙
答案 0 :(得分:10)
std::ifstream::eof
是一个返回bool的函数。你必须把它称为
infile.eof()
答案 1 :(得分:10)
答案 2 :(得分:8)
您忘记了()
之后的eof
。