老牛来学习 发表于 2020-4-27 16:07:19

extern问题

看了网上的extern用法有点晕...

C语言在当前文件下定义的全局变量,如果要在别的文件中使用需要加extern?定义全局变量时就相当于加了extern关键字;


每个函数在定义时也相当是全局的?在其他文件中调用时加extern?

jackz007 发表于 2020-4-27 16:42:15

      准确点说,extern 是本文件以外的意思,就是说,如果你使用的标识符在本文件以外定义,在使用前,那就得用 extern 关键字加以声明。

老牛来学习 发表于 2020-4-27 16:52:37

jackz007 发表于 2020-4-27 16:42
准确点说,extern 是本文件以外的意思,就是说,如果你使用的标识符在本文件以外定义,在使用前,那 ...

所以如果要使用别的文件的全局变量,定义时不用加extern,使用前加extern关键字是吧?

jackz007 发表于 2020-4-27 17:00:33

老牛来学习 发表于 2020-4-27 16:52
所以如果要使用别的文件的全局变量,定义时不用加extern,使用前加extern关键字是吧?

      任何变量使用前都必须有定义,对于全局变量,只需要在普通定义的前面多添加一个 extern 关键字加以声明就可以了。
页: [1]
查看完整版本: extern问题