.h中的extern变量

“extern用在变量声明中常常有这样一个作用,你在*.c文件中声明了一个全局的变量,这个全局的变量如果要被引用,就放在*.h中并用extern来声明。”

但我尝试过,在.h中不用extern声明变量,仅仅使用例如:char abc[10];也是可以在其它.c文件中使用该全局变量的,请解释,谢谢!

比如
extern char abc[10];

不是说加extern能在其他文件引用的到(加不加都能引用的到),而是:
当你加了extern,代表abc数组在其他文件已经声明并开辟了空间,你在这个文件用的时候就不需要再为abc开辟一个空间了。

更为全面的信息在:

http://wenku.baidu.com/view/173c19ea998fcc22bcd10d1b.html
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-11-03
当你加了extern,代表abc数组在其他文件已经声明并开辟了空间,你在这个文件用的时候就不需要再为abc开辟一个空间了。
第2个回答  2010-11-13
兄弟,你是想试试几个文件连在一起如何用吧,呵呵!
你试着把三个文件中的这个
extern delta,a,b,c;
改成
extern float delta;
extern int a,b,c;
就是连它的类型也要声明哦!
相似回答