在C語(yǔ)言中,extern
關(guān)鍵字的主要作用是聲明一個(gè)變量或函數(shù),表示它在其他文件中已經(jīng)定義
使用extern
關(guān)鍵字的好處之一是,它允許將變量和函數(shù)的定義與它們的聲明分開(kāi)。這意味著你可以在一個(gè)源文件(如.c
文件)中定義變量或函數(shù),然后在另一個(gè)源文件中使用extern
關(guān)鍵字聲明它,以便在該文件中使用它。這有助于代碼的模塊化和組織。
例如,假設(shè)你有兩個(gè)源文件:file1.c
和file2.c
。在file1.c
中,你定義了一個(gè)全局變量x
:
// file1.c
#include<stdio.h>
int x = 10;
現(xiàn)在,如果你想在file2.c
中使用這個(gè)變量,你需要使用extern
關(guān)鍵字來(lái)聲明它:
// file2.c
#include<stdio.h>
extern int x; // 聲明在file1.c中定義的變量x
int main() {
printf("The value of x is: %d\n", x);
return 0;
}
在這個(gè)例子中,extern
關(guān)鍵字告訴編譯器x
變量在其他地方(即file1.c
)已經(jīng)定義。因此,當(dāng)你編譯并運(yùn)行這兩個(gè)文件時(shí),程序?qū)⑤敵?code>x的值。