大理工程建设信息网站,可以做没有水印的视频网站,建立网络专题网站架构,wordpress j建站C primer 之 extern什么是声明什么是定义两者有什么区别ertern的作用什么是声明
就是使得名字为程序所知#xff0c;一个文件如果想使用别处定义的名字就必须包含对那个名字的声明。
什么是定义
负责创建与名字关联的实体。
两者有什么区别
变量声明和声明都规定了变量的…
C primer 之 extern什么是声明什么是定义两者有什么区别ertern的作用什么是声明
就是使得名字为程序所知一个文件如果想使用别处定义的名字就必须包含对那个名字的声明。
什么是定义
负责创建与名字关联的实体。
两者有什么区别
变量声明和声明都规定了变量的类型和名字但是定义还申请了存储空间也可能会为变量赋一个初始值。
ertern的作用
如果想声明一个变量而非定义它就在变量名前添加关键字extern而且不要赋初始值。
extern int i; //声明i而非定义i
int j // 声明并定义j举个栗子 创建 a.cpp 和 b.cpp a.cpp代码如下所示 b.cpp代码如下所示 编译成功显示 n 10 注在函数体内部如果试图初始化一个由extern关键字标记的变量将引发错误 再举个栗子 在上面a.cpp的基础上修改一下 b.cpp 不变 编译运行报错 报错原因猜测a.cpp中本来n是内部定义的变量只在局部起作用但是又在前面加了一个extern使其与外部又可以联系产生了矛盾。如有错误欢迎大佬批评指正