现在的位置: 首页 > 综合 > 正文

extern作用

2013年10月16日 ⁄ 综合 ⁄ 共 578字 ⁄ 字号 评论关闭

参考《C语言深度剖析》

    extern,外面的、外来的意思。那它有什么作用呢?举个例子:假设你在大街上看到一个黑皮肤绿眼睛红头发的美女(外星人?)或者帅哥。你的第一反应就是这人不是产的。

    extern就相当于他们的这些区别于中国人的特性。extern可以置于变量或者函数前,以标示变量或者函数的定义在别的文件中,下面的代码用到的这些变量或函数是外来的,不是本文件定义的,提示编译器遇到此变量和函数时在其他模块中寻找其定义。就好比在本文件中给这些外来的变量或函数带了顶帽子,告诉本文件中所有代码,这些家伙不是著。那你想想extern修饰的变量或函数是定义还是声明?
    看列子:
    A.c文件中定义: B.c文件中用extern修饰:
    int i = 10; extern int i;//写成i=10;行吗?
    void fun(void) extern void fun(void);//两个void可否省略?
    {
        //code
    }
    C.h文件中定义: D.c文件中用extern修饰:
    int j = 1; extern double j;//这样行吗?为什么?
    int k = 2; j = 3.0;//这样行吗?为什么?
    至于extern“C”的用法,一般认为属于C++的范畴,这里就先不讨论。当然关于extern的讨论还远没有结束,在指针与数组那一章,你还会和它亲密接触的。

抱歉!评论已关闭.