隔江千里
eof 就是文件结束因为文件指针到最后一个字符时并不会触发eof,再读一次读不到数据才触发eof,这样c还保留着上一次的数据,又被输出一次,peek()方法是读取文件指针下一个位置的值,但并不移动文件指针,用在这里很合适#include<iostream>#include <fstream>using namespace std;void main(){fstream io;char c;io.open ("a.txt",ios::in);while (io.peek()!=EOF) //这样判断{io>>c;cout<<c;}cout<<endl;io.close();}