首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> C >> C 語言入門

C語言內部函數與外部函數:static 限制作用域、extern 跨文件調用

     編輯:C 語言入門

內部函數

// file1.c
void public_api(void) { /* 默認外部連接 */ }

// file2.c
extern void public_api(void);  // 聲明,非定義
void caller(void) { public_api(); }
  • 默認 extern,跨文件可見。
  • 頭文件放 extern 聲明,源文件放定義。
  • 變量同理:static int g 內部,extern int g 外部聲明。

代碼示例

b?a:b; }  // 內部函數
extern void character_int_out_put(void);           // 外部聲明

int main(void) {
    character_int_out_put();  // 調用外部函數
    return 0;
}

最佳實踐

  1. 盡量用 static 隱藏實現細節,減少符號衝突。
  2. 頭文件僅含 extern 聲明(函數可省略 extern)。
  3. 全局變量極少用 extern,傾向單例模式或靜態局部變量。

總結

static(函數/變量)控制連接可見性,extern 聲明外部符號引用。二者構成 C 語言模塊化編程的基石:隱藏內部、暴露接口、分離編譯。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved