读取的代码是:
int Function(FILE fpi*, int *Ncols, int *Nrows) {
if (fscanf(fpi, "%d", Nrows) > 0) {
return fscanf(fpi, "%d", Ncols);
} else {
printf("%s\n", "EOF reached.");
return -1;
}
}
(注意 - 功能只是一个替代名称)。该文件看起来像:
2 2
1 1
1 1
3 3
1 1 1
1 1 1
1 1 1
它遍历第一组指令很好 - 也就是说,它需要2和2并将它们存储在Ncols和Nrows中,然后使用以下2乘2的数据集(一组数据)进行操作;但是,在主程序中到达while循环结束时:
int eof = Function(fpin1, &Rsize1, &Csize1);
while (eof > 0) {
stuff
eof = Function(fpin1, &Rsize1, &Csize1);
}
它刚刚死了。