当前位置: 技术问答>linux和unix
请高手帮我解释这句话extern __FAR__ GT_Config *GT;
来源: 互联网 发布时间:2017-01-01
本文导语: 如题,第一个不明白的地方是GT_Config 本来就是这个.h文件中定义的,为何要用extern; 第二个不解的地方是__FAR__; | 这个__FAR__应该是个宏定义. 好像在16位系统中用. 32位中没用了. http://topic.c...
如题,第一个不明白的地方是GT_Config 本来就是这个.h文件中定义的,为何要用extern;
第二个不解的地方是__FAR__;
第二个不解的地方是__FAR__;
|
这个__FAR__应该是个宏定义.
好像在16位系统中用.
32位中没用了.
http://topic.csdn.net/t/20031215/12/2564632.html
好像在16位系统中用.
32位中没用了.
http://topic.csdn.net/t/20031215/12/2564632.html
|
使用了extern之后,别的*.c文件包含了这个头文件之后,就能直接使用GT这个指针了,而GT指针其实在其他地方定义的。这是一种常见的全局变量使用方法。
比如说,你有一个全局变量glb,在A.c中定义,但是你可能在别的源文件中也想使用它,这时你可以把glb extern 声明到A.h中,这样你在其他源文件中包含A.h,就可以使用glb了,否则编译不通过的。
比如说,你有一个全局变量glb,在A.c中定义,但是你可能在别的源文件中也想使用它,这时你可以把glb extern 声明到A.h中,这样你在其他源文件中包含A.h,就可以使用glb了,否则编译不通过的。