0
我正在研究C代碼,以便從輸入文件中讀取三列數字,然後用獲得的數字進行基本數學計算。我的輸入文件看起來像:閱讀欄
155.4996 38.0078 7.65
93.9968 44.9926 7.68
我目前試圖分開使用的sscanf列。爲了實現這一點,我試圖讀取列中的內容,並將第三列輸出到輸出文件。下面是我現在所擁有的:
FILE * fp;
FILE * fp2;
char *string;
char out[2000];
char read[1000];
int column1, column2, column3;
strcpy(read, "casecent");
strcpy(out, "Diff");
fp = fopen(read, "r");
fp2 = fopen(out, "w+");
while (!feof(fp))
{
fgets(string, 1000, fp);
sscanf(string, "%d %d %d", &column1, &column2, &column3);
fprintf(fp2,"%d\n", column3);
}
我目前得到的零輸出文件,而不是數字。我敢肯定,我只是缺少一些小而笨的東西,但如果你能幫助我,那將是非常感謝。
太棒了非常感謝你!一個快速跟進問題,你能幫我弄清楚爲什麼它正在讀取和打印輸入文件的最後一行兩次? –
下面是一個非常好的解釋和修復:http://www.gidnetwork.com/b-58.html –