当前位置: 首页 > wzjs >正文

最近发生的新闻热点事件长沙官网seo

最近发生的新闻热点事件,长沙官网seo,仿大前端wordpress主题,什么网站免费做简历模板目录 总述 一、声明外部变量 二、声明外部函数 三、实现模块化编程 四、与"C" 连用,实现C和C的混合编程 五、注意事项 六、疑点补充(你可能会有和我一样的疑问?) 总述 在C和C中,extern关键字用于声明外…

目录

总述

一、声明外部变量

二、声明外部函数

 三、实现模块化编程

四、与"C" 连用,实现C和C++的混合编程

 五、注意事项

六、疑点补充(你可能会有和我一样的疑问?)


总述

       在C和C++中,extern关键字用于声明外部全局变量变量或函数,表明它们的定义位于其他文件中,从而允许在不同源文件之间共享变量和函数。以下是extern的常见用法:

一、声明外部变量

一)用法

       在一个源文件中定义全局变量后,在其他源文件中使用extern声明该变量,以便访问它。

二)示例

        file1.c:定义全局变量

int globalVar = 10;

        file2.c:声明并使用该变量

extern int globalVar;void func(){printf("globalVar = %d\n",globalVar);
}

二、声明外部函数

一)用法

        在一个源文件中定义函数后,在其他源文件中使用extern声明该函数,以便调用它。

二)示例

        file1.c:定义函数

void func(){//函数实现
}

        file2.c:声明并调用该函数

extern void func();int main(){func();return 0;
}

 三、实现模块化编程

一)用法

        将extern声明放在头文件中,以便多个源文件包含头文件后共享变量和函数。

二)示例

        header.h

#ifndef HEADER_H
#define HEADER_Hextern int globalVar;
extern void func();#endif

        file1.c

#include "header.h"int globalVar = 10;
void func(){//函数实现
}

        file2.c

#include "header.h"void anotherFunc(){printf("globalVar = %d\n",globalVal);func();
}

四、与"C" 连用,实现C和C++的混合编程

一)用法

        在C++中,使用extern "C"指定按照C语言规则进行函数名修饰和链接,以便调用C语言编写的库函数或在C语言中调用C++编写的函数。

二)示例

        C++代码调用C函数

extern "C"{#include "c_library.h"
}int main(){c_function();return 0;
}

        C代码调用C++函数

//C++ code
extern "C" void cpp_function(){//函数实现
}

 五、注意事项

一)声明与定义的区别

        extern用于声明变量或函数,定义时需要分配内存空间。变量只能定义一次,但可以多次声明。

二)头文件保护

        在头文件中使用extern声明变量或函数时,应配合条件编译指令(如#ifndef、#define、#endif)防止头文件被重复包含。

        通过合理使用extern关键字,可以提高代码的组织性和可维护性,实现模块化编程,并支持C和C++混合编程。

六、疑点补充(你可能会有和我一样的疑问?

问:extern 引用的变量可以赋值吗?

答:在 C 和 C++ 中,使用 extern 关键字声明的变量本质上是一个指向已经在其他地方定义的变量的引用。它的主要作用是告诉编译器这个变量在其他文件中定义,可以在当前文件中使用。关于赋值的问题,下面是一些要点:

一)赋值效果:虽然在声明时使用 extern 不允许你直接给这个变量赋初始值,但你可以在任何地方(通常是在其定义所在的文件中)对其进行赋值。例如:

//file1.c
int myVar; // 定义
myVar = 10; // 可以赋值//file2.c
extern int myVar; //引用变量,不能初始化
myVar = 20; //可以赋值,虽然在其他文件中被引用void modifyValue(){myVar = 30; // 可以赋值
}int main(){modifyValue();printf("myVar = %d\n",myVar);return 0;
}

 二)初始化与赋值如果在同一作用域内声明变量,extern声明的变量不能被初始化。例如:

extern int myVar = 10; //错误:无法初始化extern声明的变量

三)在函数内:在函数内部,你可以访问extern声明的变量并对其赋值,但前提是该变量在其他地方有定义。

        总之,extern引用的变量是可以被赋值的在声明时不能直接初始化它

http://www.dtcms.com/wzjs/412032.html

相关文章:

  • 建设网站如百度客户服务电话是多少
  • 柳州做网站aso优化排名
  • 做o2o平台网站需要多少钱淘宝客推广
  • 兴远建设网站百度问一问官网
  • 网站开发毕业论文参考期刊文献抖音关键词推广怎么做
  • 天猫网站建设分析sem培训
  • 网站建设技术团队中国新闻社
  • 网站轮播图片怎么做的淘宝运营培训
  • dw做的手机端网站搜索seo优化
  • 支付宝 手机网站支付接口2.0房地产最新消息
  • seo网站优化推广怎么做何鹏seo
  • 提供网站建设课程无锡百度公司王东
  • 做网站的意义百度首页排名优化多少钱
  • 网站被镜像怎么做网站关键词优化的价格
  • 四川建设培训网刷seo快速排名
  • 网站建设重要软文推广代理
  • 网站的差异平台宣传推广方案
  • 网站建设win2012企业管理系统
  • 建设信用卡激活中心网站百度数据平台
  • 哪个网站查备案价百度推广登录入口登录
  • 汕头网页网站制作百度电话怎么转人工客服
  • 太原网站建设baidu北京广告公司
  • 做动态网站的用工具栏百度推广app下载安卓版
  • 培训教育行业网站建设方案武汉百度关键词推广
  • 网站设计的工作内容网站关键词优化案例
  • 焦作网站制作-焦作网站建设-焦作网络公司-维科网络seo排名软件怎么做
  • 浦口区建设局网站爱站网长尾关键词挖掘
  • 淄博网站建设推广百度快速排名优化服务
  • 便宜点的WordPress太原seo外包平台
  • 建设银行企业网站无法打印回单销售平台软件有哪些