0
我試圖讓我的代碼讀取一個txt文件,它昨天工作,但現在當我運行它「開始不調試」它打印出我提示的消息它不過是這樣,無論我輸入什麼,它都會重新詢問用戶相同的問題,而不是打印寫入txt文件的內容。我的代碼停止閱讀我的.txt文件
#include <iostream>
#include <fstream>
#include <cmath>
#include <cstdlib>
void main()
{
FILE *file_in;
char value;
file_in = NULL;
char unencrypted [1000];
while (file_in == NULL)
{
printf("Please enter the name of the file you want to open:\n");
scanf("%s", unencrypted);
file_in = fopen(unencrypted, "r");
}
printf("\n This file consists of the following message: \n");
while(!feof(file_in))
{
value = fgetc(file_in);
printf("%c", value);
}
fclose(file_in);
}
爲什麼你在使用''和''?在'C++'中使用C風格? –
P0W
您應該可以使用errno變量來獲取更多信息。每當fopen返回null時,添加一行以打印errno,並且這應該有助於您進行調試。 – user1612868
閱讀此「while(!feof(file))」總是錯誤的「 - http://stackoverflow.com/questions/5431941/while-feof-file-is-always-wrong – SChepurin