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

个人网站申请备案北京死亡病例详情

个人网站申请备案,北京死亡病例详情,网站设计制作推荐,做卡盟网站教程在 C 和 C 中,extern 是一个关键字,用于声明变量或函数是在其他文件中定义的。它主要用于实现多个源文件之间的符号共享。 目录 📌 一、C语言中的 extern 1. 基本作用 2. 示例说明 定义全局变量(只在一个 .c 文件中&#xff…

在 C 和 C++ 中,extern 是一个关键字,用于声明变量或函数是在其他文件中定义的。它主要用于实现多个源文件之间的符号共享。

目录

📌 一、C语言中的 extern

1. 基本作用

2. 示例说明

定义全局变量(只在一个 .c 文件中):

在另一个 .c 文件中使用该变量:

编译方式:

3. 函数的 extern

4. 头文件中使用 extern

📌 二、C++ 中的 extern

1. 基本用法与 C 相同

2. extern "C" 的用途

使用场景:

示例:

📊 三、C vs C++ 中 extern 的对比

✅ 四、总结


📌 一、C语言中的 extern

1. 基本作用

  • 告诉编译器该变量或函数已经在别处定义,当前只是引用。
  • 避免重复定义错误,同时允许链接器找到实际的定义位置。

2. 示例说明

定义全局变量(只在一个 .c 文件中):
// main.c
#include <stdio.h>int globalVar = 10;  // 全局变量定义extern void otherFunction();  // 声明外部函数int main() {otherFunction();return 0;
}
在另一个 .c 文件中使用该变量:
// other.c
#include <stdio.h>extern int globalVar;  // 声明为 extern,表示这个变量在别的地方定义void otherFunction() {printf("globalVar = %d\n", globalVar);
}
编译方式:
gcc main.c other.c -o program

3. 函数的 extern

  • 所有函数默认都是 extern 的。
  • 所以你通常不会写 extern void func();,而是直接声明函数原型即可。
// main.c
void otherFunction();  // 默认就是 externint main() {otherFunction();return 0;
}
// other.c
#include <stdio.h>void otherFunction() {printf("Hello from otherFunction!\n");
}

4. 头文件中使用 extern

为了方便管理多个 .c 文件中的变量引用,可以将 extern 声明放在头文件中:

// globals.h
#ifndef GLOBALS_H
#define GLOBALS_Hextern int globalVar;  // 声明为 extern#endif

然后在各个 .c 文件中包含这个头文件:

// main.c
#include "globals.h"int globalVar = 10;  // 只在这里定义一次int main() {...return 0;
}
// other.c
#include "globals.h"
#include <stdio.h>void otherFunction() {printf("globalVar = %d\n", globalVar);
}

📌 二、C++ 中的 extern

C++ 中的 extern 与 C 类似,但有一些扩展和差异。

1. 基本用法与 C 相同

// main.cpp
#include <iostream>int globalVar = 10;extern void otherFunction();int main() {otherFunction();return 0;
}
// other.cpp
#include <iostream>extern int globalVar;void otherFunction() {std::cout << "globalVar = " << globalVar << std::endl;
}

2. extern "C" 的用途

这是 C++ 独有的功能,用于关闭 C++ 的名字改编(name mangling)机制,以便调用 C 编写的函数或变量。

使用场景:
  • 调用 C 库函数
  • 混合编程:C++ 调用 C 编写的 .c 文件中的函数或变量
示例:
// C 函数声明
extern "C" {void c_function();int c_variable;
}int main() {c_function();std::cout << "c_variable = " << c_variable << std::endl;return 0;
}

这告诉编译器:这部分符号按照 C 的方式来处理,不要进行 C++ 的重载解析或名称修饰。


📊 三、C vs C++ 中 extern 的对比

特性C 中的 externC++ 中的 extern
基本用途声明变量/函数在其他文件中定义同左
函数默认属性所有函数默认是 extern同左
头文件使用推荐在头文件中用 extern 声明变量同左
extern "C"❌ 不支持✅ 支持,用于兼容 C
名称修饰(Name Mangling)❌ 无✅ 存在,默认开启,需用 extern "C" 关闭
变量定义限制只能在一个 .c 文件中定义同左(ODR 规则)

✅ 四、总结

  • extern 是 C/C++ 中用于跨文件访问变量或函数的关键字。
  • 在 C 中主要用于多文件共享全局变量。
  • 在 C++ 中除了类似功能外,还引入了 extern "C" 来支持与 C 的互操作。
  • 正确使用 extern 可以避免重复定义错误,并提高模块化设计能力。

文章转载自:

http://1k0axu5L.qymqh.cn
http://hhLwrdzZ.qymqh.cn
http://kz212jQB.qymqh.cn
http://ETLMCSKY.qymqh.cn
http://70lWKRH8.qymqh.cn
http://FlZE1ftS.qymqh.cn
http://enEt1M4x.qymqh.cn
http://lhCcBsdc.qymqh.cn
http://LS5zsG03.qymqh.cn
http://iIzwGfev.qymqh.cn
http://jyqKzFPe.qymqh.cn
http://ewIC01Bp.qymqh.cn
http://8WEuLoFd.qymqh.cn
http://sYDsFkpr.qymqh.cn
http://uQbdvJD0.qymqh.cn
http://NVXFPpYY.qymqh.cn
http://UqMemcij.qymqh.cn
http://FldEv4JF.qymqh.cn
http://kZKG1aIu.qymqh.cn
http://bNFr598a.qymqh.cn
http://pt0A9y1p.qymqh.cn
http://EN79w0Wk.qymqh.cn
http://cRW4H7in.qymqh.cn
http://qrfdMXqy.qymqh.cn
http://pne2vgxH.qymqh.cn
http://dLEGEkbE.qymqh.cn
http://iVgEhXnJ.qymqh.cn
http://WKuCCuyF.qymqh.cn
http://4YxQnx1G.qymqh.cn
http://WVfMjWMy.qymqh.cn
http://www.dtcms.com/wzjs/780320.html

相关文章:

  • 自己搭建视频播放网站江苏省住房与城乡建设部网站
  • 奉贤网站开发双语企业网站源码
  • 网站建设新闻中心做网站的怎么跑业务
  • wap网站psd重庆城乡建设局网站
  • 做全房订制网站公司网站安全保障机制如何做
  • 网站开发人员招聘it管理宝塔wordpress经常502
  • 中国空间站进展dw可以做网站后台吗
  • 网站制作的基础凡客诚品的衣服什么档次
  • 网站建设哪些好番禺网站建设价格
  • 广州海外建站外国人做的中国字网站
  • 网站图片要求临沂建网站哪家好
  • 定制设计网站深圳高速建设有限公司
  • 云南专业建网站建行个人网上银行登录入口官网
  • 专门做中式装修的网站网站文章正文可以做内链吗
  • 网络推广 公司 200个网站wordpress主题 收费
  • 大专学网站开发我们做的网站是优化型结构
  • 广州黄埔做网站020网站开发多少钱
  • 如何使网站做的更好wordpress怎么仿站
  • 贷款做网站三星网上商城官网app下载
  • 石家庄市住房建设局网站域名审核怎么做返利网站
  • 做搞笑图片的网站做外贸的网站有哪些
  • 手机网站开发有前途南宁网站制作最新招聘信息
  • 阿里备案成功后怎么做网站北京企业网站建设费用
  • 办公用品网站建设山东食品行业网站模板
  • 网站开发实训设计报告潍坊网站建设SEO优化
  • 网站建设完工报告兴化住房和城乡建设局网站
  • 龙元建设陕西公司网站网站建设运营协议
  • 网站开发的形式有( )怎么样查看网站开发语言
  • 苏州网站建设 公司在线制作印章diy印章
  • 合肥需要做网站的公司企业网站名是什么意思