這是我在這里的第一個問題。
我是從書本上學習 C 語言的絕對初學者。我已經讀到了書中關于檔案和命令列引數的部分,但現在我被困在這段代碼中:
#include <stdio.h>
int main (int argc,char **argv)
{
FILE *f=fopen(argv[1],"r");
int c;
do
{
c=fgetc(f);
printf("%c",c);
}
while(!feof(f));
}
當我運行它時(引數是用于測驗的代碼自己的檔案名),出現
錯誤訊息:彈出錯誤訊息
“0x0000000000401474 處的指令參考了 0x0000000000000006 處的記憶體。無法讀取記憶體。單擊確定終止程式。單擊取消以除錯程式。”
有人可以解釋錯誤訊息的含義,以及我在這里做錯了什么嗎?
我為我的英語不好而道歉。
uj5u.com熱心網友回復:
您需要檢查檔案指標是否不為 NULL,例如
if (f == NULL) {
return EXIT_FAILURE;
}
此外,檔案在使用完畢后需要關閉。
fclose(f);
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/359867.html
上一篇:ORA-00907:缺少右括號-僅在添加where陳述句時出現(
下一篇:讀取指定為引數的檔案并回傳其行
