空函數(shù)就是什么也不做的函數(shù)。
創(chuàng)新互聯(lián),為您提供重慶網(wǎng)站建設(shè)公司、成都網(wǎng)站制作、網(wǎng)站營(yíng)銷推廣、網(wǎng)站開發(fā)設(shè)計(jì),對(duì)服務(wù)成都戶外休閑椅等多個(gè)行業(yè)擁有豐富的網(wǎng)站建設(shè)及推廣經(jīng)驗(yàn)。創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司成立于2013年,提供專業(yè)網(wǎng)站制作報(bào)價(jià)服務(wù),我們深知市場(chǎng)的競(jìng)爭(zhēng)激烈,認(rèn)真對(duì)待每位客戶,為客戶提供賞心悅目的作品。 與客戶共同發(fā)展進(jìn)步,是我們永遠(yuǎn)的責(zé)任!
void kong(){ //函數(shù)沒(méi)形參
int a[2][3]={1,2,3,4,5,6}; //函數(shù)內(nèi)有個(gè)二維數(shù)組
}
void kong2(int b[3][3]){ //函數(shù)形參有個(gè)二維數(shù)組
int a[3][2]={1,2,3,4,5,6}; //函數(shù)內(nèi)有個(gè)二維數(shù)組
}
main(){
int c[3][3];
kong(); // 調(diào)用空函數(shù),試試無(wú)參
kong2(c); // 調(diào)用空函數(shù),試試參數(shù)傳遞
return 0;
}
void 來(lái)定義空類型。
比如聲明一個(gè)函數(shù)
int a(int x);
聲明一個(gè)個(gè)反回值為int型,帶一個(gè)int函參的函數(shù):a
void a(int x);
聲明一個(gè)無(wú)返回值,帶一個(gè)int型孫參的函數(shù):a
準(zhǔn)確的說(shuō),函數(shù)這個(gè)名稱不太準(zhǔn)確,容易誤導(dǎo)人。C/C++里的函數(shù)應(yīng)該被叫做“子程序”,是一個(gè)獨(dú)立的程序段,可以被重復(fù)調(diào)用用來(lái)完成類似的功能
這樣的“子程序”很多情況下是用來(lái)提供一個(gè)值的,這就是通常的函數(shù),這個(gè)值的類型必須明確,就是返回值的類型
但有的子程序不是用來(lái)提供一個(gè)值,可以僅僅是執(zhí)行某些特定的操作,那么,定義為空類型是安全的,表示“不允許該子程序返回值”。這種子程序只能通過(guò)獨(dú)立的語(yǔ)句調(diào)用,不能用在表達(dá)式里
之所以需要空類型,是因?yàn)椋瘮?shù)的默認(rèn)返回值類型是int,如果在函數(shù)定義時(shí)未帶返回類型說(shuō)明,則默認(rèn)為int;即使函數(shù)中沒(méi)有return語(yǔ)句,編譯器按照函數(shù)返回值的原理,會(huì)返回一個(gè)不確定的值。如果將這樣的函數(shù)錯(cuò)用在表達(dá)式里,語(yǔ)法上沒(méi)錯(cuò),但會(huì)帶來(lái)很難察覺(jué)的邏輯錯(cuò)誤。
而將空類型函數(shù)用在表達(dá)式里是一個(gè)編譯錯(cuò)誤。