关于extern

来源:互联网 发布:淘宝对多店铺的严查 编辑:程序博客网 时间:2024/05/29 17:27

 在读别人程序的,发现头文件声明的函数中,有extern,但是以前自己写程序,头文件中声明的函数都没有加extern,怎么回事?

看了以下的博客,明白到底是怎么回事了。

http://blog.sina.com.cn/s/blog_54a1bca70100hbf5.html


extern可以声明变量,也可以声明函数,表示引用外部定义的变量或者函数。

因为变量的声明和定义是有区别的,如我相声明一个外部的变量,我是这样声明,extern int a;

但是如果去年extern的话,就成了 int a, 是变量的定义了。这样如果出现的头文件中,可能遇到多重定义的情况。

但是函数的声明和定义,是通过函数体来区分的,所以不需要extern来进行区别。因此,函数的定义和声明就把extern给省略掉了。

对于函数来说,加不加extern是一样的,都相当于加了extern.



原创粉丝点击