我在代码中创建了一个 this 文件指针,其中应包含我的 log.txt 文件的地址:
文件*日志
这个地址取决于我的 main.c 函数中的 argv[1]
,它可能是这样的:
char address[200];
strcpy(address, argv[1]);
FILE *log;
log = fopen(address, "w");
我需要 *log
指向的地址在我的所有 .c 源文件中可见,因为它们将包含如下几行:
fprintf(log, "Comment to be printed on log.txt");
我知道这是制作日志文件的不好方法,但是我的程序足够大,因此更改所有日志打印行将花费相当长的时间。
必须使用 argv[1] 定义文件的地址。在我的函数可以使用它之前如何定义它(以及如何让它们识别它)?
最佳答案
将log
定义为全局变量,并在其他使用它的地方通过extern FILE *log;
将其声明为外部符号。
关于c - 需要在 C 中的源文件之间共享文件指针的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21769418/