पढ़ता है मेरे पास टेक्स्ट फ़ाइल (num.txt) से पढ़ने के लिए निम्न सरल प्रोग्राम है। पाठ फ़ाइल में प्रत्येक पंक्ति में संख्या 1 2 3 4 5 है। जब मैं प्रोग्राम चलाता हूं, तो यह 5 बार प्रिंट करता है। क्या कोई मुझे बता सकता है कि यह क्यों हो रहा है, और इसे कैसे ठीक किया जाए? अग्रिम धन्यवादfscanf अंतिम पूर्णांक को दो बार
int main(void)
{
int number;
FILE *file;
int i = 0;;
file = fopen("num.txt", "r");
while (!feof(file)){
fscanf(file, "%d", &number);
printf("%d\n", number);
}
return 0;
}
यहाँ मेरी पाठ फ़ाइल num.xtx
1
2
3
4
5
है और यहाँ कार्यक्रम उत्पादन
1
2
3
4
5
5
नहीं है एक अतिरिक्त 5
'जबकि (! Feof (फाइल)) {' :: feof() समस्या – wildplasser
मेरा सुझाव है मई आप पढ़ सकते हैं [इस] (का कारण है http://stackoverflow.com/questions/5431941/ जबकि-feof-फ़ाइल-है-हमेशा गलत)? – niklasfi
जब आप पिछले 5 को देखते हैं तो fscanf द्वारा दिया गया मान क्या है? मैं शर्त लगा रहा हूं कि यह 1 नहीं है ;-) –