C语言中的extern关键字
时间: 2024-09-23 20:10:59 浏览: 58
C语言中extern关键字详解[参考].pdf
在 C 语言中,`extern` 关键字用于声明变量、函数或类型在整个程序中的可见性,即使在当前文件(源文件)中未定义,编译器也知道该变量或函数的存在。它有以下几种常见用途:
1. **全局变量声明**:
如果在一个源文件中定义了一个全局变量,但在其他文件中需要使用这个变量,就需要在头文件中通过 extern 声明它。例如:
```c
extern int globalVar;
```
然后在另一个源文件中定义:
```c
int globalVar = 0; // 定义并初始化
```
2. **函数原型声明**:
当函数定义在某个源文件里,而在其他文件中要用到这个函数,也需要先用 extern 声明函数原型,以告知编译器函数的名称和返回类型,而不需要函数体。比如:
```c
extern void myFunction(void);
```
3. **链接外部库**:
在链接阶段,`extern` 可以标识从外部库导入的变量或函数,告诉链接器在链接时查找。
4. **防止多次定义**:
使用 extern 声明已经在其他文件中定义过的全局变量或静态局部变量,避免在同一程序中有多个定义,造成冲突。
阅读全文