溫馨提示×

C語言中extern的用法有哪些

小億
119
2023-07-31 17:58:25
欄目: 編程語言

在C語言中,extern關(guān)鍵字有以下幾種用法:

  1. 聲明外部變量:extern用于聲明在其他文件中定義的全局變量。通過使用extern關(guān)鍵字,可以在當(dāng)前文件中引用其他文件中定義的全局變量。

示例:

// File1.c
int num; // 全局變量
// File2.c
extern int num; // 聲明全局變量num
  1. 聲明外部函數(shù):extern用于聲明在其他文件中定義的函數(shù)。通過使用extern關(guān)鍵字,可以在當(dāng)前文件中引用其他文件中定義的函數(shù)。

示例:

// File1.c
int add(int a, int b) {
return a + b;
}
// File2.c
extern int add(int a, int b); // 聲明函數(shù)add
  1. 在函數(shù)聲明中使用外部存儲類說明符:extern用于在函數(shù)聲明中指定函數(shù)的存儲類說明符為extern。這樣做可以確保函數(shù)在鏈接時使用外部定義的函數(shù),而不是當(dāng)前文件中的定義。

示例:

extern int add(int a, int b); // 聲明函數(shù)add為外部函數(shù)
int main() {
int result = add(3, 4); // 調(diào)用外部函數(shù)add
return 0;
}

需要注意的是,extern關(guān)鍵字不僅適用于全局變量和函數(shù)的聲明,還可以用于局部變量的聲明。但是,在函數(shù)內(nèi)部使用extern關(guān)鍵字聲明局部變量時,該變量會被視為全局變量,而不是局部變量。這種用法并不常見,一般情況下不建議在函數(shù)內(nèi)部使用extern關(guān)鍵字聲明變量。

0