1

读取代码为:

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;
    }
}

(注意 - Function 只是一个替代名称)。该文件如下所示:

2 2
1 1
1 1
3 3
1 1 1
1 1 1
1 1 1

它很好地迭代了第一组指令——也就是说,它需要 2 和 2 并将它们存储在 Ncols 和 Nrows 中,然后对以下 2 x 2 数据集(一组数据)进行操作;但是,在主程序中的 while 循环结束时:

int eof = Function(fpin1, &Rsize1, &Csize1);
while (eof > 0) {
    stuff

    eof = Function(fpin1, &Rsize1, &Csize1);
}

它只是死了。

4

0 回答 0