当前位置:   article > 正文

extern巧用_c语言头文件 define可以extern吗

c语言头文件 define可以extern吗

序言

在工程开发中总会遇到不同的C文件需要调用同一个变量,对于这个问题当经验较少时可能会老老实实一个一个extern来敲,这将会带来巨大的工作量,而且在构造过程中会发现及其无聊,感觉自己像是一个没有感情的机器,一直在重复类似的工作。

正文

针对此种应用场景有这么一个个人认为比较灵便的方法:
step 1
对需要extern定义的头文件开头这样写:
#if defined(A_GLOBAL)
#define A_EXE
#elseif
#define A_EXE extern
A_EXE int a;
A_EXE unsigned int b;
#endif
注:此处使用A_EXE来代替extern.
step2:
对于头文件命名对应的C文件,则开头加这么一句话:
#define A_GLOBAL
#include “上述头文件.h”

注:此处先定义A_GLOBAL,则#include上述头文件后,会使得此C文件中与A_EXE相关的变量不包含extern.
setp3:
对于其他C文件,则:
#include “上述头文件”

注:此C文件中与A_EXE相关的变量包含extern。
总结:以上述方法可实现在大大减少工作量的同时避免变量多重定义,值得借鉴

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
  

闽ICP备14008679号