extern 变量的使用方法
时间: 2024-09-28 09:05:33 浏览: 37
C++中的extern声明变量详解
在 C/C++ 中,`extern` 关键字用于声明变量或函数的外部链接,也就是告诉编译器变量的位置不在当前源文件内,而是在别的地方定义。当在头文件(`.h`)中使用 `extern` 声明变量时,它不是真正的初始化,而是提供了一个名称供其他源文件引用。
以下是 `extern` 使用的基本步骤:
1. **声明**(declaration):
- 在头文件(.h)中,使用 `extern` 关键字声明变量,但不提供其实现(如类型、值等)。例如:
```c
extern int globalVar;
```
2. **定义**(definition):
- 在至少一个源文件(.cpp)中,给 `extern` 变量提供一个实际的内存位置和初始值:
```c
int globalVar = 0; // 这就是全局变量globalVar的定义
```
3. **链接**(linking):
- 当所有相关的源文件编译完成后,在链接阶段,所有包含 `extern` 变量的声明会被连接到实际的定义上。
4. **注意点**:
- 如果在所有源文件中都声明了同名的 `extern` 变量,那么它们需要指向同一个地址。
- `extern` 可以用于全局变量(`int globalVar`)、静态局部变量(在函数内部用 `static` 声明),以及静态成员变量(类内的 `extern static`)。
阅读全文