我有一個文本文件"hello.txt"
,我需要讀取該文件並寫入stdout
10次,我該怎麼做?讀取和寫入文件的內容10次
我在做什麼目前如下: -
#include<stdio.h>
main(){
int c,i;
FILE *fp;
for(i=0;i<10;++i) {
fp = fopen("hello.txt","r");
for(;c!=EOF;c= getc(fp),putchar(c));
fclose(fp);
}
return 0;
}
此代碼打印內容只有1次,但不 10倍。
一個好的做法是嘗試和調試程序來查找錯誤。 –
第一次進入循環時,代碼已經運行到未定義的行爲,因爲'c'是針對'EOF'的測試,沒有在此之前進行初始化。讀取未初始化的變量會引發未定義的行爲。 – alk