【发布时间】:2018-10-23 00:51:54
【问题描述】:
假设我有五个文件:main.c, sample1.c, sample1.h, sample2.c 和 sample2.h,其中每个文件中的DEBUG_PRINTS 定义如下:
#ifndef DEBUG_PRINTS
#define DEBUG_PRINTS 0
#endif
并且代码是使用 gcc 编译的:
gcc -Wall main.c sample1.c sample2.c -o main
现在我将一个文件中DEBUG_PRINTS 的值更改为1。如果不打印到终端,您如何确定将应用哪个值?
此外,如何在每个文件本地定义 DEBUG_PRINTS - 与对变量使用 static 关键字一样?
【问题讨论】: