在下面的代碼中,我試圖存儲文件(包括換行符)中的所有字符。 如果讀取換行符,變量'i'應該增加,'j'重置爲0,但這不會發生。我已經確認換行符實際上是通過從陣列打印到控制檯來讀取和存儲的。從getc文件讀取時檢查字符
void scan_solved_nonogram(board *b) {
FILE *file = fopen("test.txt", "r");
int i = 0, j = 0;
while((b->symbol[i][j] = getc(file)) != EOF) {
j++;
if(b->symbol[i][j] == '\n') {
i++;
j = 0;
}
}
fclose(file);
b->size_i = i;
b->size_j = j;
}
一個建議,而不是'而((B->符號[i] [j] = GETC(文件))= EOF!)',使用** ** INT變量eample'INT CH;並改變,而像'while((c = getc(file))!= EOF)'現在在'{}'檢查'ch'對'\ n' –
我假設符號是char的二維數組。你確認你得到一個0xA字符(換行符)嗎? – Tarik