形參名可以省,形參的類(lèi)型不要??;如int fact(int);以便編譯器識(shí)別形參和實(shí)參的類(lèi)型是否匹配。
目前累計(jì)服務(wù)客戶(hù)上1000+,積累了豐富的產(chǎn)品開(kāi)發(fā)及服務(wù)經(jīng)驗(yàn)。以網(wǎng)站設(shè)計(jì)水平和技術(shù)實(shí)力,樹(shù)立企業(yè)形象,為客戶(hù)提供成都做網(wǎng)站、網(wǎng)站建設(shè)、網(wǎng)站策劃、網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)絡(luò)營(yíng)銷(xiāo)、VI設(shè)計(jì)、網(wǎng)站改版、漏洞修補(bǔ)等服務(wù)。成都創(chuàng)新互聯(lián)始終以務(wù)實(shí)、誠(chéng)信為根本,不斷創(chuàng)新和提高建站品質(zhì),通過(guò)對(duì)領(lǐng)先技術(shù)的掌握、對(duì)創(chuàng)意設(shè)計(jì)的研究、對(duì)客戶(hù)形象的視覺(jué)傳遞、對(duì)應(yīng)用系統(tǒng)的結(jié)合,為客戶(hù)提供更好的一站式互聯(lián)網(wǎng)解決方案,攜手廣大客戶(hù),共同發(fā)展進(jìn)步。
在C語(yǔ)言中,形參即為形式參數(shù)。它在整個(gè)函數(shù)編譯的時(shí)候,沒(méi)有實(shí)際的數(shù)據(jù)賦于它,僅僅作于定義某個(gè)函數(shù)或者函數(shù)名。而實(shí)參既為實(shí)際參數(shù)。顧名思義,在函數(shù)中,有一個(gè)特定的數(shù)據(jù)賦值給它,可以作于在函數(shù)中進(jìn)行運(yùn)算。
可以,聲明函數(shù)時(shí)可以不需要形參名稱(chēng),只要形參類(lèi)型。注意這叫函數(shù)聲明,不叫定義。在大括號(hào)中給出函數(shù)具體實(shí)現(xiàn)的才叫函數(shù)定義。定義函數(shù)時(shí)形參名不能省略。
1、在C語(yǔ)言里,變量只能在函數(shù)的開(kāi)頭處聲明和定義。在函數(shù)里要用到的變量必須要在開(kāi)頭處聲明定義。聲明定義的前面不能有任何其他非聲明定義的語(yǔ)句。全局變量在函數(shù)體的外部聲明定義。
2、不對(duì),在C語(yǔ)言中,傳值有地址傳值和參數(shù)傳值,參數(shù)傳值只能將實(shí)參傳值給形參,所以A選項(xiàng)正確。C語(yǔ)言中的外部變量是可以在函數(shù)之間傳遞數(shù)據(jù)的。C語(yǔ)言中的自動(dòng)變量是默認(rèn)的變量,實(shí)際上是函數(shù)中的局部變量,所以D選項(xiàng)正確。
3、主要有兩種:(1)值傳遞:在函數(shù)調(diào)用時(shí),將實(shí)參的值復(fù)制一份傳遞到調(diào)用函數(shù)中,這樣,如果在調(diào)用函數(shù)中修改了參數(shù)的值,也不會(huì)影響到實(shí)參的值。(2)引用傳遞:與(1)相反,即會(huì)影響實(shí)參的值。
4、C語(yǔ)言的模塊化程序結(jié)構(gòu)用函數(shù)來(lái)實(shí)現(xiàn),即將復(fù)雜的C程序分為若干模塊,每個(gè)模塊都編寫(xiě)成一個(gè)C函數(shù),然后通過(guò)主函數(shù)調(diào)用函數(shù)及函數(shù)調(diào)用函數(shù)來(lái)實(shí)現(xiàn)一大型問(wèn)題的C程序編寫(xiě),因此常說(shuō):C程序=主函數(shù)+子函數(shù)。
5、C語(yǔ)言函數(shù)在函數(shù)過(guò)程編寫(xiě)前定義,比如編寫(xiě)一個(gè)名稱(chēng)為fx的函數(shù),那么:includestdio.h...void fx(變量類(lèi)型定義,用,分開(kāi));main(){ 。。fx(形參);。。} void fx(變量類(lèi)型定義,用,分開(kāi)){。。
C++中, 類(lèi)成員的初始化于初始化列表中完成, 先于構(gòu)造函數(shù)體執(zhí)行. 即成員真正的初始化發(fā)生在初始化列表中, 而不是構(gòu)造函數(shù)體中.再給說(shuō)明。
函數(shù)定義時(shí)必須寫(xiě)出形參類(lèi)型和變量名。C語(yǔ)言中的標(biāo)準(zhǔn)函數(shù)printf便使用這種機(jī)制。在聲明不確定形參的函數(shù)時(shí),形參部分可以使用省略號(hào)“…”代替。
自定義一個(gè)函數(shù) int p(int x){return x*2;} 在調(diào)用的時(shí)候,傳入的參數(shù)需要得到聲明。在main函數(shù)里面求a的兩倍的時(shí)候(比如b=p(a);),a必須得到聲明。
這個(gè)問(wèn)題是一個(gè)通識(shí)性的問(wèn)題,顯然void name(int x,int y)如果是函數(shù)的原型聲明就不需要x和y了,如果是函數(shù)定義呢,就一定要的。
一是形式。構(gòu)造函數(shù)有不同的參數(shù)表,這樣你在用類(lèi)去構(gòu)造,建立新對(duì)象時(shí),你可以通過(guò)不同的形式來(lái)完成初始化。比如,你可以:SomeClass obj1,obj2(1,2,3);SomeClass obj3(obj1);這樣,可以完成不同形式的初始化。
因此void display(people x){...}執(zhí)行時(shí),會(huì)調(diào)用默認(rèn)拷貝構(gòu)造函數(shù),所以x對(duì)象中的name屬性沒(méi)有賦值,指向了未知的地址,因此x.getname()會(huì)出錯(cuò)。