定義一個(gè)函數(shù)我們需要確定以下內(nèi)容:
專注于為中小企業(yè)提供成都做網(wǎng)站、網(wǎng)站制作、成都外貿(mào)網(wǎng)站建設(shè)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)海滄免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了成百上千家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。
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,一對小括號(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()后,我們雖然對函數(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
函數(shù)由返回值類型,函數(shù)名,參數(shù)類型,參數(shù)名等四部分組成
函數(shù)名是一個(gè)標(biāo)識(shí)符,大小寫有區(qū)別。
沒有關(guān)心過函數(shù)名的最長字符的限制
C語言中的函數(shù)可以分為以下幾類:
內(nèi)置函數(shù):這些是由C語言標(biāo)準(zhǔn)庫提供的函數(shù),例如數(shù)學(xué)函數(shù)、字符串函數(shù)等。
自定義函數(shù):這些是由程序員自己定義的函數(shù),可以用來實(shí)現(xiàn)特定的功能。
庫函數(shù):這些是由其他庫文件提供的函數(shù),例如Windows API函數(shù)、數(shù)據(jù)庫函數(shù)等。
遞歸函數(shù):這種函數(shù)在它自己的函數(shù)體內(nèi)調(diào)用自己,可以用來實(shí)現(xiàn)某些算法。
內(nèi)聯(lián)函數(shù):這種函數(shù)可以被編譯器直接嵌入到調(diào)用處,從而減少函數(shù)調(diào)用的開銷。
在C語言中一個(gè)函數(shù)一般由兩個(gè)部分組成一個(gè)是函數(shù)頭,一個(gè)是函數(shù)體。
函數(shù)體是編程語言中定義一個(gè)函數(shù)功能的所有代碼組成的整體。函數(shù)體是用花括號(hào)括起來的若干語句,他們完成了一個(gè)函數(shù)的具體功能。函數(shù)體內(nèi)的前面是定義和說明部分,后面是語句部分。函數(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ù)原型說明語句時(shí),系統(tǒng)就從函數(shù)頭中獲取函數(shù)原型信息。
擴(kuò)展資料?
函數(shù)體使用示例:
main(){printf()();printf()();}//函數(shù)體是花括號(hào)內(nèi)的所有語句的集合,包括花括號(hào)在內(nèi)
一個(gè)函數(shù)的原型語句就是其函數(shù)頭的一個(gè)拷貝,當(dāng)然要在最后加上語句接上結(jié)束符分號(hào)。函數(shù)原型語句與函數(shù)頭也有細(xì)微的差別。
在函數(shù)原型語句中,其參數(shù)表中的每個(gè)參數(shù)允許只保留參數(shù)類型,而省略參數(shù)名,并且若使用參數(shù)名也允許與函數(shù)頭中對應(yīng)的參數(shù)名不同。
參考資料來源:百度百科—函數(shù)頭
參考資料來源:百度百科—函數(shù)體