C語言函數(shù)返回值與參數(shù)傳遞實(shí)例分析

本篇內(nèi)容介紹了“C語言函數(shù)返回值與參數(shù)傳遞實(shí)例分析”的有關(guān)知識,在實(shí)際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

成都創(chuàng)新互聯(lián)是一家專業(yè)提供華安企業(yè)網(wǎng)站建設(shè),專注與成都網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站、外貿(mào)網(wǎng)站建設(shè)、HTML5建站、小程序制作等業(yè)務(wù)。10年已為華安眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)的建站公司優(yōu)惠進(jìn)行中。

一:參數(shù)傳遞

C語言的函數(shù)中必不可少的就是參數(shù)傳遞,可以采用傳值和傳指針兩種方式。
1.傳值的形式:只是將參數(shù)值的拷貝傳給函數(shù),并非參數(shù)本體如:

int test(int x,int y)
{
    x=2*y;
    return x;
}
int main(void)
{ 
    int a=0,b=5;
    printf("%d,%d
",test(a,b),a);
	return 0;
}

運(yùn)行結(jié)果為:

10,0

即傳值方式只可以將實(shí)參傳遞給函數(shù),不可以改變實(shí)參本身。

2.傳指針形式:直接傳給函數(shù)的是變量的地址。
如:

int a(int b,int *c)
{
    int i=0;
    for(i=0;i<4;i++)
        c[i]=b*i;
    return 0;
    
}
int main(void)
{ 
    int b=2,c[4],i;
    a(b,c);
    for(i=0;i<4;i++)
	    printf("Data is -> %d
",c[i]);
	return 0;
}

運(yùn)行結(jié)果為:

Data is -> 0
Data is -> 2
Data is -> 4
Data is -> 6

由于被調(diào)函數(shù)在參數(shù)指針的作用域之內(nèi),此時可以直接改變變量的本體。

二:返回值

函數(shù)除了參數(shù)傳遞還有返回值,既可以返回變量值也可以返回地址。
1.返回變量
如:

int a(int b)
{
    int i=5;
    return 5*b;
}
int main(void)
{ 
    int b=2;
	printf("Data is -> %d
",a(b));
	return 0;
}

運(yùn)行結(jié)果

Data is -> 10

2.返回地址

int *test(int b)
{
    int i=0,buf[4];
    for(i=0;i<4;i++)
        buf[i]=b*i;
    return buf;
    
}
int main(void)
{ 
    int  b=2;
    int *p;
    int  i=0;
    p=test(b);
    for(i=0;i<4;i++)
    	printf("%d ,%d 
",p[i],test(b));
	return 0;
}

運(yùn)行結(jié)果

0 ,1084896256
2 ,1084896256
4 ,1084896256
6 ,1084896256

另外不能返回局部變量地址。

int *buf()
{
	 int dad;
	 double buf[3][2];
	 dad=sizeof(buf);
  	 return &dad;//error:由于dad是局部變量,函數(shù)結(jié)束后釋放。
}

“C語言函數(shù)返回值與參數(shù)傳遞實(shí)例分析”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!

新聞名稱:C語言函數(shù)返回值與參數(shù)傳遞實(shí)例分析
網(wǎng)站網(wǎng)址:http://muchs.cn/article46/gphheg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供響應(yīng)式網(wǎng)站、標(biāo)簽優(yōu)化、商城網(wǎng)站做網(wǎng)站、網(wǎng)站導(dǎo)航外貿(mào)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)