C 标准库 - <stdio.h>

C 语言 fscanf() 函数用于从文件格式化读取数据,用法与 scanf 相同。

原型

int fscanf(FILE *stream, const char *format, ...);

返回成功读取并赋值的项数,读到文件尾返回 EOF。

参数

  • stream - 源文件指针;
  • format - 格式字符串;
  • 后面是要写入的变量地址(&var)。

示例

#include <stdio.h>

int main() {
    FILE *fp = fopen("data.txt", "r");
    if (fp == NULL) return 1;
    int a, b;
    fscanf(fp, "%d %d", &a, &b);
    printf("读取: %d %d\n", a, b);
    fclose(fp);
    return 0;
}

若 data.txt 内容为 "10 20",输出:

读取: 10 20

注意事项

fscanf 读取格式化文件效率高,但格式不匹配时容易出错;解析自由文本建议 fgets + sscanf。