【发布时间】:2014-03-30 11:56:53
【问题描述】:
假设input.txt是1字节的文本文件:
std::ifstream fin("input.txt", std::ios::in);
fin.get(); // 1st byte extracted
fin.get(); // try to extract 2nd byte
std::cout << fin.eof(); // eof is triggered
fin.unget(); // return back
std::cout << fin.eof(); // eof is now reset
fin.get(); // try to extract 2nd byte, eof assumed
std::cout << fin.eof(); // no eof is triggered
似乎unget() 打破了eof 标志触发也打破了文件指针。我做错了吗?
【问题讨论】: