国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

參數(shù)傳遞方式

2019-11-11 01:32:29
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
C里面有兩種傳遞1、值傳遞2、指針傳遞嚴(yán)格來(lái)看,只有一種傳遞,值傳遞,指針傳遞也是按值傳遞的,復(fù)制的是地址。C++里面有三種傳遞方法:1、值傳遞2、指針傳遞3、引用傳遞但是嚴(yán)格來(lái)看,是兩種,其實(shí)指針傳遞也是值傳遞,只不過(guò)是值傳遞的是地址。
轉(zhuǎn)自https://zhidao.baidu.com/question/127400341.html?qbl=relate_question_4&Word=%B4%AB%B2%CE%D3%D0%C8%FD%D6%D6%B7%BD%CA%BD
#include<iostream>using namespace std;void swap(int a,int b){int temp;temp=a;a=b;b=temp;} main(){int a=3,b=5;cout<< "before ‘swap’:a="<<a<<",b="<<b<<endl;swap(a,b);cout<<"after  ‘swap’:a="<<a<<",b="<<b<<endl;}這個(gè)例子是傳值調(diào)用, 意思就是 形參 的 改變不會(huì)影響 實(shí)參的值。你運(yùn)行一下可知 主函數(shù)調(diào)用了swap函數(shù)后 a,b的值并沒(méi)有發(fā)生交換。原因是,調(diào)用swap函數(shù)時(shí) 編譯器為 swap(int a,int b) 中的形參 a , b單獨(dú)分配內(nèi)存空間,并接受主函數(shù)傳遞來(lái)的值,這塊內(nèi)存空間和 main()函數(shù)中的 a ,b 不是同一內(nèi)存空間。 所以在swap(int a,int b) 中 a , b發(fā)生了交換,但main函數(shù)中a , b沒(méi)發(fā)生交換。即主調(diào)函數(shù)與被調(diào)函數(shù)的操作對(duì)象各不相同,參數(shù)僅在調(diào)用時(shí)由實(shí)參向形參傳遞,而不可由形參向?qū)崊鬟f。要使a ,b發(fā)生交換 需要使用傳址調(diào)用。程序改為如下:#include<iostream>using namespace std;void swap(int & a,int &b){int temp;temp=a;a=b;b=temp;cout<<"in ‘swap’:a="<<a<<",b="<<b<<endl;}  main(){int a=3,b=5;cout<< "before ‘swap’:a="<<a<<",b="<<b<<endl;swap(a,b);cout<<"after  ‘swap’:a="<<a<<",b="<<b<<endl;}引用可以看作是一個(gè)變量的別名,使用 引用 時(shí) ,對(duì)于void swap(int a,int b)   編譯器并沒(méi)有給形參a,b分配新的內(nèi)存空間,只是使 形參a,b指向了main函數(shù)中實(shí)參a,b的內(nèi)存空間,他們共享同一內(nèi)空間,即把地址給了形參。所以在void swap(int a,int b)函數(shù)中對(duì)這塊內(nèi)存的改變也就改變了實(shí)參的值。除了使用引用,也可以使用指針。指針?lè)绞胶鸵梅绞蕉紝儆趥髦氛{(diào)用。 
上一篇:文章標(biāo)題

下一篇:移動(dòng)距離

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 菏泽市| 芦山县| 夹江县| 华蓥市| 桦甸市| 东台市| 绥江县| 永靖县| 文登市| 政和县| 崇仁县| 西丰县| 南宫市| 察哈| 泗阳县| 海林市| 黎川县| 绥中县| 平罗县| 陈巴尔虎旗| 钟祥市| 甘德县| 洪江市| 南宫市| 佳木斯市| 育儿| 宝应县| 漯河市| 烟台市| 区。| 南木林县| 内江市| 营山县| 修水县| 梅河口市| 龙游县| 祁东县| 晋中市| 鱼台县| 嘉义县| 任丘市|