定義一個(gè)函數(shù)我們需要確定以下內(nèi)容:
創(chuàng)新互聯(lián)專業(yè)成都做網(wǎng)站、網(wǎng)站制作,集網(wǎng)站策劃、網(wǎng)站設(shè)計(jì)、網(wǎng)站制作于一體,網(wǎng)站seo、網(wǎng)站優(yōu)化、網(wǎng)站營(yíng)銷、軟文推廣等專業(yè)人才根據(jù)搜索規(guī)律編程設(shè)計(jì),讓網(wǎng)站在運(yùn)行后,在搜索中有好的表現(xiàn),專業(yè)設(shè)計(jì)制作為您帶來效益的網(wǎng)站!讓網(wǎng)站建設(shè)為您創(chuàng)造效益。
1、函數(shù)的返回值類型
2、函數(shù)的名稱
3、函數(shù)的參數(shù)
4、函數(shù)主體代碼塊
示例代碼:
int definePlus(int a, int b)
{
a = a + 1;
b = b + 1; ??
return a + b;
}
例如上面代碼中就定義了一個(gè)返回值為int類型的函數(shù),其函數(shù)名為definePlus,一對(duì)小括號(hào)中的內(nèi)容為這個(gè)函數(shù)的參數(shù),也就是說這個(gè)函數(shù)有兩個(gè)傳入?yún)?shù)int a和int b。
在函數(shù)體內(nèi),分別讓a在原來的基礎(chǔ)上加1,讓b在原來的基礎(chǔ)上加1,然后使用return關(guān)鍵字返回a + b的和。如果a的值是2,而b的值是3,那么這個(gè)函數(shù)的返回值則是7。
擴(kuò)展資料
函數(shù)的調(diào)用與聲明
如果函數(shù)的定義是在調(diào)用函數(shù)的后面則需要在調(diào)用之前聲明函數(shù)的定義,否則不需要事先聲明。聲明的意思是告訴編譯器,這個(gè)函數(shù)的返回值類型、函數(shù)名和參數(shù)。
在調(diào)用一個(gè)函數(shù)時(shí),需要向這個(gè)函數(shù)傳其需要的參數(shù),例如a和b這兩個(gè)變量,并可以指定另一個(gè)變量用于接收這個(gè)函數(shù)執(zhí)行后的返回值,比如變量c就接收了函數(shù)wrongplus()的返回值,結(jié)果為7。
但是我們看到程序的運(yùn)行結(jié)果是?2 + 3 = 7,也就是說,執(zhí)行了函數(shù)wrongplus()后,我們雖然對(duì)函數(shù)內(nèi)的參數(shù)變量分別加1,但主函數(shù)main中的a和b的值并沒有發(fā)生變化。示例代碼:
#include stdio.h
main()
{
int a = 2, b = 3;
int c;
int wrongplus(int a, int b);
c = wrongplus(a, b);
printf("%d + %d = %d\n",a, b, c);
}
int wrongplus(int a, int b){
a = a + 1;
b = b + 1; ??
return a + b;
}
2 + 3 = 7
C語(yǔ)言中的函數(shù)可以分為以下幾類:
內(nèi)置函數(shù):這些是由C語(yǔ)言標(biāo)準(zhǔn)庫(kù)提供的函數(shù),例如數(shù)學(xué)函數(shù)、字符串函數(shù)等。
自定義函數(shù):這些是由程序員自己定義的函數(shù),可以用來實(shí)現(xiàn)特定的功能。
庫(kù)函數(shù):這些是由其他庫(kù)文件提供的函數(shù),例如Windows API函數(shù)、數(shù)據(jù)庫(kù)函數(shù)等。
遞歸函數(shù):這種函數(shù)在它自己的函數(shù)體內(nèi)調(diào)用自己,可以用來實(shí)現(xiàn)某些算法。
內(nèi)聯(lián)函數(shù):這種函數(shù)可以被編譯器直接嵌入到調(diào)用處,從而減少函數(shù)調(diào)用的開銷。
包括返回值,函數(shù)名,形參列表和函數(shù)體四個(gè)部分。
例如 :
int findmin(int a[],int n){
//函數(shù)體
return min;
}
以上函數(shù)int 是返回值,findmin是函數(shù)名, int a[] int n是形參列表
在C語(yǔ)言中一個(gè)函數(shù)一般由兩個(gè)部分組成一個(gè)是函數(shù)頭,一個(gè)是函數(shù)體。
函數(shù)體是編程語(yǔ)言中定義一個(gè)函數(shù)功能的所有代碼組成的整體。函數(shù)體是用花括號(hào)括起來的若干語(yǔ)句,他們完成了一個(gè)函數(shù)的具體功能。函數(shù)體內(nèi)的前面是定義和說明部分,后面是語(yǔ)句部分。函數(shù)聲明與函數(shù)體放在一起組成了函數(shù)定義。
函數(shù)頭是指函數(shù)體之前的所有部分,應(yīng)用于數(shù)學(xué)、程序設(shè)計(jì)領(lǐng)域,作用是給出了該函數(shù)的返回類型。在一個(gè)函數(shù)定義中,函數(shù)體之前的所有部分稱為函數(shù)頭,它給出了該函數(shù)的返回類型、每個(gè)參數(shù)的次序和類型等函數(shù)原型信息,所以當(dāng)沒有專門給出函數(shù)原型說明語(yǔ)句時(shí),系統(tǒng)就從函數(shù)頭中獲取函數(shù)原型信息。
擴(kuò)展資料?
函數(shù)體使用示例:
main(){printf()();printf()();}//函數(shù)體是花括號(hào)內(nèi)的所有語(yǔ)句的集合,包括花括號(hào)在內(nèi)
一個(gè)函數(shù)的原型語(yǔ)句就是其函數(shù)頭的一個(gè)拷貝,當(dāng)然要在最后加上語(yǔ)句接上結(jié)束符分號(hào)。函數(shù)原型語(yǔ)句與函數(shù)頭也有細(xì)微的差別。
在函數(shù)原型語(yǔ)句中,其參數(shù)表中的每個(gè)參數(shù)允許只保留參數(shù)類型,而省略參數(shù)名,并且若使用參數(shù)名也允許與函數(shù)頭中對(duì)應(yīng)的參數(shù)名不同。
參考資料來源:百度百科—函數(shù)頭
參考資料來源:百度百科—函數(shù)體