0

我正在fscanf()使用直到的循环从 C 中的数据文件中读取字符串EOF。数据文件包含由任何空格分隔的字符串。随着字符串被读入,fscanf()它们将被检查是否有任何无效信息。我需要跟踪项目所在的行号,以便在检测到无效项目时显示该项目的行号。就像我说的那样,数据文件不仅仅是每行一个字符串。有什么比读取所有内容直到新行、将其拆分为单独的字符串并检查这些字符串更优雅的方法吗?我可以确定文件指针当前指向的行号吗?

4

1 回答 1

3

CI/O 库中没有行号计数器。您需要自己跟踪行号。

我建议您一次使用 读取一行,fgets每次递增行号计数器,然后使用 读取该字符串中的项目sscanf

于 2015-10-07T07:37:13.017 回答