大家好我有一个这样的外部文件:
我想读取所有字符(包括空格和新行)到我的2维(行和列)数组,但我没有这样做。例如,在第10行和第1列(左下角)的该文件中有一个'/'字符。我想把'/'放在我的数组[9] [0]中(数组中的索引从0开始而不是1),所以每个字符都在数组中与文件相同。
这是我的代码:
#include <stdio.h>
int main(void) {
/** my index array variable, i for row and j for column */
int i;
int j;
/** varible to read character */
char c;
/** array for the input. The file will not consist more than 17 rows and 2017 columns*/
char input[17][2017];
/** pointer to a file */
FILE *fp;
/** read that file. (my code and that file are located in the same place) */
fp = fopen("bangun.in", "r");
/** start reading the file */
i = 0;
j = 0;
while ( (c = fgetc(fp)) != EOF){
if (c != 0) {
input[i][j]=c;
}
else if (c == '\n') {
input[i][j]=c;
printf("get in");
i++;
}
j++;
}
fclose(fp);
return 0;
}
如果我的算法很糟糕,你能告诉我怎么做吗?我的目标是将所有角色复制到我的阵列中。
答案 0 :(得分:5)
如果逻辑错误,如果c == 0(否则条件)它将永远不会是新行。