सिर्फ इसलिए कि हम EOF तक नहीं पहुंचे हैं, इसका मतलब यह नहीं है कि अगला पठन सफल होगा।
मान लें कि आपके पास एक फ़ाइल है जिसे आप C++ में फ़ाइल स्ट्रीम का उपयोग करके पढ़ते हैं। फ़ाइल को पढ़ने के लिए लूप लिखते समय, यदि आप stream.eof() के लिए जाँच कर रहे हैं, तो आप मूल रूप से जाँच कर रहे हैं कि फ़ाइल पहले ही eof तक पहुँच चुकी है या नहीं।
तो आप −
. जैसा कोड लिखेंगेउदाहरण
#include<iostream> #include<fstream> using namespace std; int main() { ifstream myFile("myfile.txt"); string x; while(!myFile.eof()) { myFile >> x; // Need to check again if x is valid or eof if(x) { // Do something with x } } }
उदाहरण
जब आप सीधे लूप में स्ट्रीम का उपयोग करते हैं, तो आप दो बार स्थिति की जाँच नहीं कर रहे होंगे -
#include<iostream> #include<fstream> using namespace std; int main() { ifstream myFile("myfile.txt"); string x; while(myFile >> x) { // Do something with x // No checks needed! } }