extern int 在.h文件中声明了在.c文件中怎么用
时间: 2024-09-08 15:03:53 浏览: 62
51单片机C语言中.c文件和.h文件的关联
5星 · 资源好评率100%
在C语言中,当你想在一个`.c`源文件中引用一个在`.h`头文件中声明的全局变量(包括静态全局变量),你需要使用`extern`关键字。`.h`文件中的声明通常是这样的:
```c
// my_header.h
extern int global_variable;
```
然后,在`.c`文件中,如果这个变量还没有被初始化,通常会像这样声明并分配内存:
```c
// my_file.c
#include "my_header.h"
int global_variable; // 如果是在这里首次声明并初始化
int main() {
// 现在可以直接使用global_variable,但实际数值未定,可能需要在某个地方初始化
global_variable = some_initial_value;
return 0;
}
```
如果你在`.c`文件中已经对这个变量进行了定义,那么在`.h`文件中就不需要再声明了,但在头文件中保留`extern`声明有助于保持接口的一致性:
```c
// my_file.c
#include "my_header.h"
int global_variable = some_initial_value; // 实际的变量定义
int main() {
// 直接使用
return 0;
}
```
记住,每次修改`global_variable`的值都会影响所有链接到该文件的其他部分。因此,外部链接的`extern int`应尽可能地减少,以防数据不一致。
阅读全文