0

我的 data.txt 内容是:

1 2 3 4 5 6
1 2 3 4 5 6
4 5 6 7 8 2

我读取文件,并将值存储到二维 int 数组

  int record[line_number][6]; 
  int record2[line_number][8];
  int test;

  for(i = 0; i <line_number; i++)
  {
    for(j = 0; j <6; j++)
    {
      fscanf(fptr, "%d", &record[i][j]);
    }
  }
  int a=0;
  int b=0;
  for(a=0; a<i; a++) {
    for(b=0; b<6; b++) {
      printf("%d,", record[a][b]);
    }
    printf("\n");
  }

输出像内存地址,我的代码有什么问题?谢谢!

4

1 回答 1

6

您不检查 的返回值fscanf(),因此您不知道它对于所有转换是否真的成功。如果失败,则 in 的值record[][]将未初始化,打印出来将打印内存中发生的任何内容。

于 2012-09-13T08:48:12.133 回答