![](/img/trans.png)
[英]Why does it return a null pointer when I try to visit the status file of a task?
[英]Why does the file change to null when I try to read it?
我正在嘗試讀取項目文件夾中存在的文件。 但是當我想在其中獲取字符串時,文件的數據更改為 (null) 。 我嘗試了“w”和“r”,但都沒有奏效。 這是我的代碼:
FILE* f;
if (!(f =fopen("a.txt", "r"))) {printf("Could not open file\n"); return;}
char s[10000];
fgets(s, 10000, f);
printf("%s", s);
輸出:
(null)
- 注意:打開文件沒有錯誤。
編輯:這是我的代碼的完整版本:
FILE* channelfile;
char filename[100] , name[]="hi";
sprintf(filename, "./Resources/Channels/%s.cyko", name);
if (!(channelfile =fopen("hi.cyko", "r"))) {printf("Could not open file\n"); return;}
char s[10000];
fgets(s, 10000, channelfile);
printf("%s", s);
cyko是我的文件類型(不通用)
該文件包含文本(null)
,如您的屏幕轉儲所示。
因此,打印文件的內容會打印(null)
。
QED。
由於有好幾個人關注這個問題,我現在將結果通知他們:
在向 OP 解釋了如何使用調試器后,他發現實際問題不在他發布的代碼中,而是在他項目的另一部分。
他假設他發布的代碼是導致問題的原因,因為他只是在更改了他發布的代碼后才遇到問題。 然而,似乎這個變化只是觸發了錯誤; 錯誤本身在程序的另一部分。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.