c語言中標(biāo)準(zhǔn)函數(shù)指由標(biāo)準(zhǔn)頭文件定義和實(shí)現(xiàn)的函數(shù),即“系統(tǒng)自帶的”,用戶函數(shù)是由程序員自己定義實(shí)現(xiàn)的。
創(chuàng)新互聯(lián)主營(yíng)海陽(yáng)網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營(yíng)網(wǎng)站建設(shè)方案,成都app開發(fā),海陽(yáng)h5微信小程序開發(fā)搭建,海陽(yáng)網(wǎng)站營(yíng)銷推廣歡迎海陽(yáng)等地區(qū)企業(yè)咨詢
無參函數(shù)就是函數(shù)沒有定義參數(shù),有參函數(shù)就是函數(shù)定義了參數(shù)。
如果是諸如函數(shù)聲明int fun(int b[]),這個(gè)是傳的地址,如果fun內(nèi)部有賦值操作,那么會(huì)改變數(shù)組b的元素的值
如果是執(zhí)行語句fun(b[i]);那么傳的就是b[i]這個(gè)值,執(zhí)行完fun后,b[i]的值不會(huì)變
a是一個(gè)指向指針的指針,a里面的內(nèi)容是另一個(gè)指針p的地址,那么*a就是p的地址,**a就是*p。
同理,b的內(nèi)容是另一個(gè)指針q的地址,*b就是q的地址,**b就是*q
t = *a, 那么t的內(nèi)容就是p的地址,
*a = *b, a里面的內(nèi)容變成了q的地址,即*a是q的地址,**a就是*q
*b = t, b里面的內(nèi)容變成了p的地址,即*b是p的地址,**b就是*p
這三句,將**a的值和**b的值互換了,是對(duì)指針的操作。
傳值方式:向函數(shù)傳遞參數(shù)時(shí),先復(fù)制一份參數(shù),然后才將復(fù)制品傳給參數(shù)。函數(shù)中所有對(duì)參數(shù)的操作,就只是在使用復(fù)制品。不會(huì)改變傳遞前的參數(shù)本身。
傳址方式:將地址傳送給函數(shù),函數(shù)對(duì)該地址的內(nèi)容操作,相當(dāng)于對(duì)實(shí)參本身的操作
void
funtion1(void)
{
printf("funtion1是無參函數(shù)\n");
}
void
funtion2(int
x)
{
int
y;
y=x;
printf("funtion2是有參函數(shù)\n");
printf("參數(shù)的値是
%d",y);
}
mani()
{
funtion1();
funtion2(8);
}
這里所謂的有參和無參的參是指函數(shù)的參數(shù),也就是上例中的funtion(int
x)括號(hào)中的參數(shù)x
,該參數(shù)的類型是int型。funtion2(int
x)被調(diào)用時(shí)的形式如funtion2(8),也就是x=8,然后把參數(shù)値8傳進(jìn)函數(shù)funtion2,y=8;所以,主函數(shù)main()的運(yùn)行結(jié)果是,
funtion1是無參函數(shù)
funtion2是有參函數(shù)
參數(shù)的値是8
本文題目:c語言中有參函數(shù) c語言中有參函數(shù)和無參函數(shù)的區(qū)別
本文URL:http://chinadenli.net/article2/dodcdic.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App開發(fā)、小程序開發(fā)、建站公司、響應(yīng)式網(wǎng)站、域名注冊(cè)、做網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)