头文件中声明全局变量需要注意的问题:
1,在 .c 文件中定义一次全局变量 ,在此文件中可以对该变量赋初值
2,在 .h 文件中声明为 extern 变量 ,在此处不能给该变量赋值
3,在要调用全局变量的 .c 文件中 调用 2中的 .h 文件即可
格式:
extern int a;//声明一个全局变量a(.h 应该这样写)
int a; //定义一个全局变量a (.c 文件用一下方式写)
extern int a =0 ;//定义一个全局变量a 并给初值。
int a =0;//定义一个全局变量a,并给初值,
/*xx头文件*/
#ifndef _XX_头文件.H
#define _XX_头文件.H
int A;
……
#endif
函数,函数,对于函数也一样,也是定义和声明,定义的时候用extern,说明这个函数是可以被外部引用的,声明的时候用extern说明这是一个声明。
但是对于函数extern,不管是声明还是定义都是可以省略的,因为定义函数要有函数体,声明函数没有函数体,两者如此不同,所以省略了extern也不会有问题。
头文件内的内容应该简洁!