网站首页
手机版

extern关键字的作用(extern是关键字吗)

更新时间:2022-07-17 20:45:18作者:未知

extern关键字的作用(extern是关键字吗)

extern关键字的作用是extern是指当前变量或函数不是本源文件内声明的,它是外部变量和外部函数。当我们在本文件中试图引用一个外部声明的全局变量或者函数的时候,可以在其前面加上extern。

  
  extern可以修饰变量和函数,表示该变量或函数在其他的地方被定义(本源文件或其他源文件),在这里声明使用它,这样多个源文件共享变量和函数;多个C源文件的编译是独立的,所以编译器无法判断多个源文件共享的变量的类型是否一致(只能判断变量名和函数名是否一致);等到链接的时候(这个阶段已经不再进程语法检查了),多个源文件编译后的。O文件链接成一个目标文件,如果有一个以上源文件对同一变量进行了初始化则报错。
  
  1、extern变量名,在任何函数体外声明或定义变量时,不加extern可能是定义也可能是声明,编译器选择初始化的那个(最多一个地方对它进行了初始化),如果没有初始化则任选其中一个作为定义,其他为声明,但是加extern肯定是声明;如果不想让其它源文件链接到,则需要使用static关键字。
  
  2、extern 函数,函数默认是外部的(在函数体内或函数体外声明一个外部函数,extern关键字均可以省略)如果不想让其他源文件链接到,在函数前加static关键字。在写程序的时候一定要注意外部函数的参数类型、参数个数和返回值类型,最好保持一致
  
  宏观的理解:通过上面的分心来看,C程序里,通过函数将功能区分开来。每个函数完成一个功能,而又将一片相关联的功能集合在一个源程序里,这些功能和相关联的功能之间通常要有联系,而这种练习就是通过static和extern进行联系的。
  
  

本文标签: 关键字  作用  标签  简介  

为您推荐

支付宝惊喜小红包怎么用(支付宝领大红包技巧)

支付宝是手机支付的常用工具之一,我们在线下付款之后,经常跳出来一个惊喜小红包,具体如何使用呢?首先,打开手机支付宝,点击“卡包”查看卡

2023-04-12 17:53

动物左右怎么分例题(小动物左右怎么分)

小朋友们排队站好,老师会问你的左手边是谁,右手边是谁呢,这个问题大家都觉得很好回答,那么如果是小动物排队站好,怎么区分左右呢,一起来看

2023-04-12 17:50

僵苗后该怎么处理呢(植物僵苗后该怎么处理)

很多人喜欢在日常的时候种一些花花草草的,而僵苗现象时有发生,那么僵苗后该怎么处理呢?换盆:僵苗之后一定要及时的换盆,这样子的话能够疏

2023-04-12 17:48

这是我的战争杀人方法技巧(这是我的战争刺杀技巧)

诱杀:先判定好躲藏点,然后走到敌人附近,用跑步的声音跑到躲藏点藏起来,敌人听到声音会过来巡查,走到躲藏点玩家就直接用斧头一击必杀。居

2023-04-12 17:46

水泵自动控制器是怎么使用 水泵智能控制器怎么使用

水泵自动控制器是怎么使用水泵控制器使用方法:  直接把水泵智能控制器接入管路内,无需外接继电器,即可实现低压水泵启动抽水,高压水泵

2023-04-12 17:43

black pink成员介绍 blackpink成员资料

1、BLACKPINK,韩国女子演唱组合,由金智秀(JISOO)、金智妮(JENNIE)、朴彩英(ROSé)、LISA四名成员组成。2、Jisoo出生在韩国,是一名90后,她是black pink里的领唱和舞蹈担当,她的

2023-04-12 17:41