【发布时间】:2014-09-12 03:54:41
【问题描述】:
假设我正在编写一个包含 3-5 个函数的程序,所有这些函数都处理相同的输入文件,该文件由 25-50 行字符串组成,每个字符串由 100 个字符组成。我想将此文件中的字符串用于各种字符串操作,例如删除元音和辅音、替换字符或打印出整个文件。
是否更喜欢将这些行存储在例如数组或链表中?或者我应该只为每个函数使用 fopen 和 fgets 吗?存储仅在运行时。
一般来说,在多个函数中处理同一个文件时,处理输入文件的最佳方式是什么?
【问题讨论】:
-
这取决于您是要永久存储还是直到程序终止。你的问题不够清楚
-
要么声明一个 global 流
FILE *fp(不推荐),要么在main()中声明流并将流作为参数传递给您的函数以提供对文件。例如:function (FILE *f, ...).