extern关键字

发布于 2024-09-01  487 次阅读


1.extern关键词的概念

extern关键词通常用于引用在其他文件或者地方定义的变量或函数。主要作用是使得多个源文件之间可以共享同一个变量或函数

2.共享全局变量和全局函数

现有C 源文件 file1.cfile2.c,它们都需要访问同一个全局变量count,则可以使用extern关键字在 一个文件中声明该变量,另一个文件中定义它。

  • file1.c:

    #include 
    
    int count = 10;  // 定义全局变量 count,并初始化为 10
    
    void display_count() {
      printf("Count: %d\n", count);
    }
    
  • file2.c:

    #include 
    
    extern int count;  // 声明外部全局变量 count
    extern void display_count();  // 声明外部函数 display_count()
    
    void increment_count() {
      count++;
    }
    
    int main() {
      increment_count();
      display_count();  // 正确调用外部函数 display_count
      return 0;
    }

    变量count和函数display_count都在file2.c中声明,在file1.c中实现,这时候两个文件都可以使用这个变量和函数。


踏上取经路,比抵达灵山更重要