【聲明部分】和【語(yǔ)句部分】
成都創(chuàng)新互聯(lián)公司總部坐落于成都市區(qū),致力網(wǎng)站建設(shè)服務(wù)有成都網(wǎng)站設(shè)計(jì)、網(wǎng)站制作、網(wǎng)絡(luò)營(yíng)銷策劃、網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站維護(hù)、公眾號(hào)搭建、小程序制作、軟件開(kāi)發(fā)等為企業(yè)提供一整套的信息化建設(shè)解決方案。創(chuàng)造真正意義上的網(wǎng)站建設(shè),為互聯(lián)網(wǎng)品牌在互動(dòng)行銷領(lǐng)域創(chuàng)造價(jià)值而不懈努力!
解釋:
函數(shù)聲明它為編譯器提供了有用的信息,編譯器在翻譯代碼的過(guò)程中,只有見(jiàn)到函數(shù)原型(這里即可以是聲明也可以是定義)之后才知道這個(gè)函數(shù)的名字、參數(shù)類型和返回值,這樣碰到函數(shù)調(diào)用時(shí)才知道怎么生成相應(yīng)的指令,所以函數(shù)原型必須出現(xiàn)在函數(shù)調(diào)用之前,這也是遵循“先聲明后使用”的原則。注意上面說(shuō)的函數(shù)原型是包括函數(shù)聲明和定義兩種形式的。另外還有一種特殊情況,就是隱式聲明。隱式聲明的函數(shù)返回值類型都是int。
【舉例】
#include
main()
{
printf("%d\n",jiec(5));
}
int jiec(int n)
{
int y=1;int i;
for(i=1;iy=y*i;
return(y);
}
這個(gè)程序也是可以運(yùn)行的,主要返回值為int。
c語(yǔ)言函數(shù)由主函數(shù)main和其他函數(shù)組成。
C語(yǔ)言函數(shù)是一種函數(shù),用來(lái)編譯C語(yǔ)言,所在庫(kù)函數(shù)為ctype.h,分為分類函數(shù),數(shù)學(xué)函數(shù),目錄函數(shù),進(jìn)程函數(shù),診斷函數(shù),操作函數(shù)等?!昂瘮?shù)”是從英文function翻譯過(guò)來(lái)的,其實(shí),function在英文中的意思即是“函數(shù)”,也是“功能”。
從本質(zhì)意義上來(lái)說(shuō),函數(shù)就是用來(lái)完成一定功能的。這樣對(duì)函數(shù)的概念就很好理解了,所謂函數(shù)名就是給該功能起個(gè)名字,如果該功能是用來(lái)實(shí)現(xiàn)數(shù)學(xué)運(yùn)算的,就是數(shù)學(xué)函數(shù)。
相關(guān)知識(shí):
C語(yǔ)言是目前世界上流行、使用最廣泛的面向過(guò)程的高級(jí)程序設(shè)計(jì)語(yǔ)言。C語(yǔ)言對(duì)操作系統(tǒng)和系統(tǒng)使用程序以及需要對(duì)硬件進(jìn)行操作的場(chǎng)合,用C語(yǔ)言明顯優(yōu)于其它高級(jí)語(yǔ)言。
許多大型應(yīng)用軟件都是用C語(yǔ)言編寫的。C語(yǔ)言是以函數(shù)形式提供給用戶的,這些函數(shù)可方便的調(diào)用,并具有多種循環(huán)、條件語(yǔ)句控制程序流向,從而使程序完全結(jié)構(gòu)化。
一個(gè)函數(shù)由兩部分組成:①函數(shù)的首部,包括函數(shù)名、函數(shù)類型、函數(shù)屬性、函數(shù)參數(shù)(形式參數(shù))名、參數(shù)類型。②函數(shù)體,即函數(shù)首部下面的花括號(hào)內(nèi)的部分。函數(shù)體一般包括兩部分:聲明部分、執(zhí)行部分。
.函數(shù)定義可以分為兩個(gè)部分:函數(shù)說(shuō)明部分和函數(shù)體
說(shuō)明部分 包括返回值, 函數(shù)名,和參數(shù)列表。
函數(shù)體是函數(shù)具體的實(shí)現(xiàn)。
函數(shù)是一組一起執(zhí)行一個(gè)任務(wù)的語(yǔ)句。每個(gè) C 程序都至少有一個(gè)函數(shù),即主函數(shù) main() ,所有簡(jiǎn)單的程序都可以定義其他額外的函數(shù)。
您可以把代碼劃分到不同的函數(shù)中。如何劃分代碼到不同的函數(shù)中是由您來(lái)決定的,但在邏輯上,劃分通常是根據(jù)每個(gè)函數(shù)執(zhí)行一個(gè)特定的任務(wù)來(lái)進(jìn)行的。
C 標(biāo)準(zhǔn)庫(kù)提供了大量的程序可以調(diào)用的內(nèi)置函數(shù)。例如,函數(shù) strcat() 用來(lái)連接兩個(gè)字符串,函數(shù) memcpy() 用來(lái)復(fù)制內(nèi)存到另一個(gè)位置。
函數(shù)還有很多叫法,比如方法、子例程或程序,等等。
C 語(yǔ)言中的函數(shù)定義的一般形式如下:
在 C 語(yǔ)言中,函數(shù)由一個(gè)函數(shù)頭和一個(gè)函數(shù)主體組成。下面列出一個(gè)函數(shù)的所有組成部分:
以下是 max() 函數(shù)的源代碼。該函數(shù)有兩個(gè)參數(shù) num1 和 num2,會(huì)返回這兩個(gè)數(shù)中較大的那個(gè)數(shù):
創(chuàng)建 C 函數(shù)時(shí),會(huì)定義函數(shù)做什么,然后通過(guò)調(diào)用函數(shù)來(lái)完成已定義的任務(wù)。
當(dāng)程序調(diào)用函數(shù)時(shí),程序控制權(quán)會(huì)轉(zhuǎn)移給被調(diào)用的函數(shù)。被調(diào)用的函數(shù)執(zhí)行已定義的任務(wù),當(dāng)函數(shù)的返回語(yǔ)句被執(zhí)行時(shí),或到達(dá)函數(shù)的結(jié)束括號(hào)時(shí),會(huì)把程序控制權(quán)交還給主程序。
調(diào)用函數(shù)時(shí),傳遞所需參數(shù),如果函數(shù)返回一個(gè)值,則可以存儲(chǔ)返回值。例如:
如上把 max() 函數(shù)和 main() 函數(shù)放一塊,編譯源代碼。當(dāng)運(yùn)行最后的可執(zhí)行文件時(shí),會(huì)產(chǎn)生下列結(jié)果:
形式參數(shù)就像函數(shù)內(nèi)的其他局部變量,在進(jìn)入函數(shù)時(shí)被創(chuàng)建,退出函數(shù)時(shí)被銷毀。
當(dāng)調(diào)用函數(shù)時(shí),有兩種向函數(shù)傳遞參數(shù)的方式:
默認(rèn)情況下,C 使用 傳值調(diào)用 來(lái)傳遞參數(shù)。一般來(lái)說(shuō),這意味著函數(shù)內(nèi)的代碼不能改變用于調(diào)用函數(shù)的實(shí)際參數(shù)。