我有一個用C++編寫的應用程序,它從外部txt文件獲取一些參數。此文件每行一個變量,他們是不同類型的,如:從文件中讀取不同類型的變量(每行1個)
0.8
C:\文檔\ TextFile.txt的
我想是這樣的(不完全像我現在沒有代碼)
FILE* f;
char line[300];
f = fopen("parameters.txt", "r");
scanf(line, val1);
scanf(line, val2);
scanf(line, val3);
fclose(f);
但它不起作用,也嘗試與fgets和fgetc與一些c絞刑,並沒有工作。任何幫助或想法?變量總是相同的數字,並在每個地方有相同的類型(所以我認爲我不需要任何時間或循環)。非常感謝你在這個令我瘋狂的新手問題上的幫助。
編輯: 其實,這是確切的代碼我在這裏
sscanf(line, "%99[^\n]", tp);
sscanf(line, "%99[^\n]", mcl);
sscanf(line, "%99[^\n]", pmt);
sscanf(line, "%99[^\n]", amx);
它沒有工作,它編譯但程序崩潰,所以我把它改爲scanf函數,它沒」另一種解決辦法看到噸墜毀,但變量是空的。
「scanf」的第一個參數應該是一個格式字符串。 – Barmar
Pleae顯示您的實際代碼。您發佈的代碼離正確的地方很遠,很難評論。你錯過了格式化字符串,你調用'scanf'而不是'fscanf'(所以它不是從文件中讀取),而且你還沒有顯示'valN'的聲明。 – Barmar
問題被標記爲C++,但您的代碼是使用C標準庫的I/O? –