C语言-文件读写fscanf函数

void f() {
    FILE *fp;
    int i, k=0, n=0;
    fp = fopen("d1.data", "w");
    for (i = 1; i < 4; i++) {
        fprintf(fp, "%d", i);
    }
    fclose(fp);
    fp = fopen("d1.data", "r");
    fscanf(fp, "%d%d", &k, &n);
    printf("%d %d\n", k, n);
    fclose(fp);
}

输出

123 0

这段代码的作用是将数字1、2和3以文本形式写入名为"d1.data"的文件中,
然后从该文件中读取两个整数值并打印它们。

首先,代码打开文件"d1.data"以写入模式,
然后使用fprintf函数将数字1、2和3依次写入文件中。

由于没有添加分隔符,它们将连续写入。


接下来,代码关闭写入的文件,并重新打开同一文件以读取模式。

然后,使用fscanf函数从文件中读取两个整数值,并将它们存储在变量kn中。

最后,代码使用printf函数将变量kn的值打印到控制台上,并关闭读取的文件。


C语言-文件读写fscanf函数_第1张图片 注意:

在读取时,

fscanf函数假定文件中的数据按照与
写入时相同的格式和顺序进行读取。

因此,由于在写入时没有添加分隔符

fscanf函数会将两个数字连续读取为一个整数值。

如果想要正确读取两个独立的整数值,

需要在写入时添加适当的分隔符,

例如空格或换行符

你可能感兴趣的:(c语言,开发语言)