阅读量:0
在 C 语言中,要实现全局变量的共享,可以使用 extern
关键字。extern
关键字允许在一个源文件中声明一个全局变量,并在另一个源文件中定义它。这样,两个或多个源文件可以共享同一个全局变量。
以下是如何使用 extern
关键字实现全局变量共享的步骤:
- 在一个源文件(例如
file1.c
)中定义全局变量:
// file1.c #include<stdio.h> int global_var = 0; // 定义全局变量 void set_global_var(int value) { global_var = value; }
- 在另一个源文件(例如
file2.c
)中使用extern
关键字声明该全局变量,并访问它:
// file2.c #include<stdio.h> extern int global_var; // 声明全局变量 void print_global_var() { printf("Global variable: %d\n", global_var); }
- 编译并链接这两个源文件:
gcc -o main file1.c file2.c
- 在主程序(例如
main.c
)中调用这些函数:
// main.c #include<stdio.h> extern void set_global_var(int value); extern void print_global_var(); int main() { set_global_var(42); print_global_var(); return 0; }
- 编译并运行主程序:
gcc -o main main.c file1.c file2.c ./main
输出结果:
Global variable: 42
这样,file1.c
和 file2.c
就可以共享名为 global_var
的全局变量。请注意,extern
关键字仅用于声明全局变量,而不是定义它。确保在一个源文件中定义全局变量,并在其他源文件中使用 extern
关键字声明它。