C语言extern声明外部变量详解
需积分: 9 49 浏览量
更新于2024-08-24
收藏 5.65MB PPT 举报
"本资源是关于C语言的教程,特别是讲解了如何使用extern声明外部变量。C语言是一种广泛使用的高级编程语言,起源于贝尔实验室的B语言,经过D.M.Ritchie的改进后用于开发UNIX操作系统。随着UNIX的普及,C语言也逐渐流行并标准化,先是ANSI C,然后是ISO C。学习C语言需要了解其特点、程序结构以及在不同编译系统中的差异。在C语言中,外部变量是全局变量的一种,作用域覆盖整个源文件,而extern关键字用来在其他文件中声明一个已在其他地方定义的外部变量,以便扩展其作用域。"
C语言是计算机科学中的基础语言,它具有简洁、高效和接近硬件的特点。C语言的起源可以追溯到1970年代,由B语言发展而来,最初用于编写UNIX操作系统。随着1978年《The C Programming Language》的出版,C语言开始广泛传播,其标准也在不断演进,如1983年的ANSI C,1990年的ISO C标准(ISO 9899—1990),以及后续的修订。
在C语言中,变量分为局部变量和全局变量。全局变量是在函数外部定义的,它们在整个源文件中都可见,作用域从定义位置开始直到文件结束。外部变量存储在静态存储区,其生命周期贯穿整个程序执行过程。如果要在其他源文件中使用一个已经在一个文件中定义的全局变量,就需要使用extern关键字来声明该变量,这使得外部变量可以在多个文件之间共享,但不分配额外的存储空间。
例如,在一个源文件中,我们可能有如下定义:
```c
// file1.c
int global_var = 10; // 全局变量定义
void function_in_file1() {
// ...
}
```
然后在另一个源文件中,我们需要访问这个全局变量:
```c
// file2.c
extern int global_var; // 使用extern声明全局变量
void function_in_file2() {
printf("Value of global_var is %d\n", global_var);
}
```
在这个例子中,`extern int global_var;` 声明了`global_var`的存在,使得`file2.c`知道这个变量,但不会重新分配内存。编译时,链接器会确保所有对`global_var`的引用指向同一个内存地址。
不同的C编译器可能有一些特定的实现或扩展,因此了解所使用的编译器特性是很重要的。在学习C语言的过程中,通常会以一个特定的标准(如ANSI C或ISO C)作为基础,同时参考编译器的文档以理解任何可能的差异。
C语言是一种强大的编程工具,extern关键字则是其重要组成部分,允许程序员在多个文件间共享和管理全局变量。掌握C语言和extern的使用,对于理解和编写高效、可维护的程序至关重要。
2010-09-10 上传
2015-09-05 上传
2021-10-06 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
杜浩明
- 粉丝: 13
- 资源: 2万+
最新资源
- Aspose资源包:转PDF无水印学习工具
- Go语言控制台输入输出操作教程
- 红外遥控报警器原理及应用详解下载
- 控制卷筒纸侧面位置的先进装置技术解析
- 易语言加解密例程源码详解与实践
- SpringMVC客户管理系统:Hibernate与Bootstrap集成实践
- 深入理解JavaScript Set与WeakSet的使用
- 深入解析接收存储及发送装置的广播技术方法
- zyString模块1.0源码公开-易语言编程利器
- Android记分板UI设计:SimpleScoreboard的简洁与高效
- 量子网格列设置存储组件:开源解决方案
- 全面技术源码合集:CcVita Php Check v1.1
- 中军创易语言抢购软件:付款功能解析
- Python手动实现图像滤波教程
- MATLAB源代码实现基于DFT的量子传输分析
- 开源程序Hukoch.exe:简化食谱管理与导入功能