如何通过extern实现C语言的全局变量共享

avatar
作者
猴君
阅读量:0

在 C 语言中,要实现全局变量的共享,可以使用 extern 关键字。extern 关键字允许在一个源文件中声明一个全局变量,并在另一个源文件中定义它。这样,两个或多个源文件可以共享同一个全局变量。

以下是如何使用 extern 关键字实现全局变量共享的步骤:

  1. 在一个源文件(例如 file1.c)中定义全局变量:
// file1.c #include<stdio.h>  int global_var = 0; // 定义全局变量  void set_global_var(int value) {     global_var = value; } 
  1. 在另一个源文件(例如 file2.c)中使用 extern 关键字声明该全局变量,并访问它:
// file2.c #include<stdio.h>  extern int global_var; // 声明全局变量  void print_global_var() {     printf("Global variable: %d\n", global_var); } 
  1. 编译并链接这两个源文件:
gcc -o main file1.c file2.c 
  1. 在主程序(例如 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; } 
  1. 编译并运行主程序:
gcc -o main main.c file1.c file2.c ./main 

输出结果:

Global variable: 42 

这样,file1.cfile2.c 就可以共享名为 global_var 的全局变量。请注意,extern 关键字仅用于声明全局变量,而不是定义它。确保在一个源文件中定义全局变量,并在其他源文件中使用 extern 关键字声明它。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!