29 內(nèi)部函數(shù)和外部函數(shù)

點擊藍(lán)字
關(guān)注我們
DRAGON BOAT FESTIVAL
01 關(guān)于變量的聲明和定義
一個函數(shù)一般由兩部分組成:聲明部分和執(zhí)行語句。
對變量而言,聲明與定義的關(guān)系稍微復(fù)雜一些。在聲明部分出現(xiàn)的變量有兩種情況:一種是需要建立存儲空間的,另一種是不需要建立存儲空間的。前者稱為定義性聲明,簡稱定義;后者稱為引用性聲明。
一般為了敘述方便,把建立存儲空間的聲明稱定義,而把不需要建立存儲空間的聲明稱為聲明。
在函數(shù)中出現(xiàn)的對變量的聲明(除了用extern聲明的以外)都是定義。在函數(shù)中對其他函數(shù)的聲明不是函數(shù)的定義。
02 內(nèi)部函數(shù)
內(nèi)部函數(shù)
一個函數(shù)只能被本文件中其他函數(shù)所調(diào)用,它稱為內(nèi)部函數(shù)。在定義內(nèi)部函數(shù)時,在函數(shù)名和函數(shù)類型的前面加static即:
static 類型名 函數(shù)名(形參表);
內(nèi)部函數(shù)又稱為靜態(tài)函數(shù),因為它是用static聲明的。
使用內(nèi)部函數(shù),可以使函數(shù)的作用域只局限于所在文件。這樣,在不同的文件中即使有同名的內(nèi)部函數(shù),也互不干擾。
通常把只能由本文件使用的函數(shù)和外部變量放在文件的開頭,前面都冠以static使之局部化,其他文件不能引用?!?br>
03 外部函數(shù)
在定義函數(shù)時,在函數(shù)首部的最左端加關(guān)鍵字extern,則此函數(shù)是外部函數(shù),可供其他文件調(diào)用。
例子 :
extern int fun(int a,int b);這樣,函數(shù)fun就可以為其他文件調(diào)用。
C語言規(guī)定,如果在定義函數(shù)時省略extern,則默認(rèn)為外部函數(shù)。

球分享

球點贊

球在看
