C語言函數(shù)的聲明和定義
一個函數(shù)一般由兩部分組成:
- 聲明部分執(zhí)
- 行語句
C語言對變量而言,聲明與定義的關(guān)系稍微復(fù)雜一些,在聲明部分出現(xiàn)的變量有兩種情況:
- 一種是需要建立存儲空間的。
- 另一種是不需要建立存儲空間的。
前者稱為定義性聲明,簡稱定義;后者稱為引用性聲明。
一般為了敘述方便,把建立存儲空間的聲明稱定義,而把不需要建立存儲空間的聲明稱為聲明。
在函數(shù)中出現(xiàn)的對變量的聲明,除了用extern聲明的以外都是定義,在函數(shù)中對其他函數(shù)的聲明不是函數(shù)的定義。
C語言內(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使之局部化,表示其他文件不能引用。
C語言外部函數(shù)
在定義函數(shù)時,在函數(shù)首部的最左端加關(guān)鍵字extern,則此函數(shù)是外部函數(shù),可供其他文件調(diào)用。
C語言規(guī)定,如果在定義函數(shù)時省略extern,則默認(rèn)為外部函數(shù)。
C語言****內(nèi)部函數(shù)外部函數(shù)案例
#include
extern int maxNumber(int num1,int num2)//外部函數(shù)
{
int max;
max=num1>num2?num1:num2;
return max;
}
static float minNumber(float num1,float num2)//內(nèi)部函數(shù)
{
float min;
min=num1return min;
}
int main()
{
printf("%d\\n",maxNumber(10,11));
printf("%f\\n",minNumber(10,11));
return 0;
}?num1:num2;
編譯運行結(jié)果:
11
10.000000
--------------------------------
Process exited after0.07334 secondswith return value0
請按任意鍵繼續(xù). . .
-
C語言
+關(guān)注
關(guān)注
180文章
7606瀏覽量
137051 -
函數(shù)
+關(guān)注
關(guān)注
3文章
4333瀏覽量
62721
發(fā)布評論請先 登錄
相關(guān)推薦
評論