在很多程序中都会有以下的程序段:
/"模块MAIN变量
#ifdef XXX
#define GLOBAL_XXX
#else
#define GLOBAL_XXX extern
#endif
然后会看到很多这样的变量GLOBAL_XXX unsigned char VAL1....
同时我们经常会碰到在一些调用模块中经常要调用其它模块的.h文件的一些定义,因为被调用模块.h内容很多,而自己只是调用很少一部分。
在某些地方见到#define XXX.刚开始不明白什么意思,回来才恍然大悟其意义:
1在正常#define XXX的模块文件中就像定义正常变量。
2而在没有#define的模块文件中,调用该.h文件就是对变量的声明,也不用担心重复定义。