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

C语言| extern的用法作用

C语言| 局部变量、全局变量

extern定义的变量,只对全局变量有用。

掌握extern的用法及其作用。extern主要用于在不同.c文件间扩展全局变量的作用范围。

扩展全局变量的使用范围,操作方法:

1 在一个文件内扩展全局变量的使用范围

全局变量的使用范围,只在定义处到文件结束。在引用前使用关键字extern对该变量进行“外部变量声明”,即 extern int a;  有这个声明,就可以合理使用全局变量。

2 全局变量扩展到其他文件中去使用

一个C程序可以由多个.c文件组成。

Q:如果要在一个文件中,引用另一个文件中定义的全局变量,该怎么做?

A:

i 两个文件中都分别用extern对全局变量a,作“外部变量声明”。extern int a;

ii 如果是引用其他文件中的函数,直接把对函数的声明拷贝过来,就可以使用了。

因为函数默认为extern,但是实际编程中,会单独把函数声明写在一个.h头文件中,然后在要调用该函数的文件中,使用#include 包含该头文件即可。

3 extern int a;  //C语言中允许多次声明,但有效的只有一个。

同一个.c文件中,对同一个函数进行多次声明也是允许的,但起作用的只有一个。

相关文章:

  • TB67S109AFTG, TB67S109AFNG是一款采用PWM斩波器的两相双极步进电机驱动器内置有时钟输入解码器。采用BiCD工艺制造
  • java刷题基础知识
  • 如何通过 Windows 图形界面找到 WSL 主目录
  • 玩转ChatGPT:DeepSeek实战(统一所在地格式)
  • EMQX v5.0通过连接器和规则同步数据
  • STM32 内存
  • 网页常见水印实现方式
  • 牛客周赛96补题 D F
  • 机器学习第八讲:向量/矩阵 → 数据表格的数学表达,如Excel表格转数字阵列
  • 数据集-目标检测系列- 杨桃 数据集 Starfruit>> DataBall
  • 深入学习Zookeeper的知识体系
  • KV cache 缓存与量化:加速大型语言模型推理的关键技术
  • RobotxR1:通过闭环强化学习在大语言模型上实现具身机器人智能
  • c++ 基于范围的for循环
  • keepalived+lvs
  • uniapp+vue3+uview来开发我们的项目
  • mysql常用方法
  • 【PostgreSQL数据分析实战:从数据清洗到可视化全流程】金融风控分析案例-10.3 风险指标可视化监控
  • Stapi知识框架
  • 在服务器排查java某个线程导致CPU飙高教程
  • 内塔尼亚胡:以军将在未来几天“全力进入”加沙
  • 中巡组在行动丨①震慑:这些地区有官员落马
  • 外国游客“在华扫货”热:“带空箱子到中国!”
  • 脑血管支架:救命神器还是定时炸弹?听听医生的大实话
  • 福建宁德市长张永宁拟任设区市党委正职,曾获评全国优秀县委书记
  • 福州千余公共道路泊车位装“智能地锁”续:运营公司被责令改正并罚款