#include <iostream>
#include <fstream>
int main() {
std::fstream inf( "ex.txt", std::ios::in );
while( !inf.eof() ) {
std::cout << inf.get() << "\n";
}
inf.close();
inf.clear();
inf.open( "ex.txt", std::ios::in );
char c;
while( inf >> c ) {
std::cout << c << "\n";
}
return 0;
}
私はeof()
機能について本当に混乱しています。私の ex.txt のコンテンツが次のとおりであるとします。
abc
-1
を使用して読み取ると、常に余分な文字が読み取られ、表示されますeof()
。しかし、inf >> c
「abc」という正しい出力が得られましたか? 誰かがこれを説明するのを手伝ってくれますか?