關(guān)于函數(shù)聲明和調(diào)用:如果fun函數(shù)定義在main代碼上面。比如:void fun(int a,int *b){。。};int main(){ int a=0,int b=0;...fun(a,&b);//這里fun定義代碼在main上面,所以可以不需要聲明。
創(chuàng)新互聯(lián)堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都網(wǎng)站建設(shè)、成都網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的利川網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
函數(shù)在編譯時(shí)是有實(shí)際的地址的,函數(shù)的定義中的語(yǔ)法將會(huì)存入該地址空間中,而函數(shù)的聲明就說明了這個(gè)函數(shù)的地址在哪兒,讓編譯器知道。
由于C語(yǔ)言的編譯,是對(duì)c/cpp文件的內(nèi)容從上至下編譯。一般子函數(shù)(用戶定義的函數(shù))放在主函數(shù)(main函數(shù))后面的話,main函數(shù)前面就該有聲明,不然編譯系統(tǒng)將無(wú)法識(shí)別到子函數(shù)。
函數(shù)聲明語(yǔ)名要寫在主函數(shù)之前,有函數(shù)的返回值的類型,函數(shù)名,函數(shù)的形參列表。如:int fun(int ,int);函數(shù)的定義 是一個(gè)完整的函數(shù),有函數(shù)體即函數(shù)的功能。
樓主可以這樣想,C語(yǔ)言中,無(wú)論是常量,變量,函數(shù),只有先定義才能使用的。在函數(shù)定義時(shí),大腦要往一般的常量,變量定義的方向,切忌先不要想函數(shù)的別的。定義好后,把函數(shù)的定義先放一邊,不管它。
所以聲明只是為了編譯器而已。 聲明,定義這些,主要還是函數(shù),類方面的。
頭文件包含是簡(jiǎn)單的文本替換,即用頭文件的內(nèi)容代替#include所在行。這樣在不同的源文件中只要用一條#include就可以聲明多個(gè)函數(shù)了。但是反火來,只用最原始的聲明而不用頭文件也是可以的,只是比較麻煩而已。
可以的,前提是,在使用一個(gè)函數(shù)之前必須先對(duì)他進(jìn)行聲明://void B();聲明B函數(shù)的存在。void A(){B();//非法,程序執(zhí)行到此時(shí)并不知道B函數(shù)的存在。
第一種:無(wú)論在printf中,還是main中,或者是在其他任何函數(shù)中,要調(diào)用自定義函數(shù),都要進(jìn)行先定義。后面就可以自由調(diào)用了。第二種:C語(yǔ)言把自定義函數(shù)的語(yǔ)句放在調(diào)用的后面,但調(diào)用之前,一定要寫上自定義函數(shù)的聲明語(yǔ)句。
一,函數(shù)調(diào)用的一般形式為:函數(shù)名(實(shí)參列表);實(shí)參可以是常數(shù)、變量、表達(dá)式等,多個(gè)實(shí)參用逗號(hào),分隔。在c語(yǔ)言中,函數(shù)調(diào)用的方式有多種,例如:在函數(shù)調(diào)用中還應(yīng)該注意的一個(gè)問題是求值順序的問題。
對(duì)于您說的這個(gè)問題,個(gè)人建議您養(yǎng)成一個(gè)良好的習(xí)慣,那就是,所有的自定義函數(shù)都放在調(diào)用塔的函數(shù)的前面,這樣就不用進(jìn)行函數(shù)的說明。以上就是我的希望能幫助到您。所有不當(dāng)之處,敬請(qǐng)批評(píng)指正。
自定義函數(shù)是由用戶按需要寫的函數(shù)。這與庫(kù)函數(shù)相對(duì)應(yīng)的,庫(kù)函數(shù)是由c系統(tǒng)提供的函數(shù),已經(jīng)定義好了如printf 、scanf 、getchar 、putchar、gets、puts、strcat等函數(shù)均屬此類。
函數(shù)定義好以后,要被其它函數(shù)調(diào)用了才能被執(zhí)行。C 語(yǔ)言的函數(shù)是能相互調(diào)用的,但在調(diào)用函數(shù)前,必須對(duì)函數(shù)的類型進(jìn)行說明,就算是標(biāo)準(zhǔn)庫(kù)函數(shù)也不例外。