我有一个函数可以逐个字符地从文件中获取输入:
#include <iostream>
#include <fstream>
using namespace std;
ifstream input("sequence.txt");
char getChar(){
char nextType;
if (input.eof()) {
input.clear();
input.seekg(0,ios::beg);
}
input >> nextType;
return nextType;
}
int main(){
for(int i = 0; i < 10; i++){
cout << getChar() << endl;
}
return 0;
}
“sequence.txt”中的输入是:
I O
所以输出应该交替打印 I 和 O,而是输出:
I O O I O O I O O I
如何在第一次读取文件中的最后一个字符后重置文件?