C 中引用作為函式引數與C的區別

2021-09-24 17:34:01 字數 1286 閱讀 2681

c++,函式傳參:

(1)將變數名作為實參和形參。這時傳給形參的是變數的值,

傳遞是單向的。如果在執行函式期間形參的值發生變

化,並不傳回給實參。因為在呼叫函式時,形參和實參

不是同乙個儲存單元。//同c

(2) 傳遞變數的指標。形參是指標變數,實參是乙個變數的

位址,呼叫函式時,形參(指標變數)指向實參變數單元。

這種通過形參指標可以改變實參的值。//同c

(3) c++提供了 傳遞變數的引用。形參是引用變數,和實參是

乙個變數,呼叫函式時,形參(引用變數)指向實參變數

單元。這種通過形參引用可以改變實參的值。

對乙個資料建立乙個「引用」,他的作用是為乙個變數起乙個別名。這是c++對c語言的乙個重要補充。

摘自

// an highlighted block

#include

using namespace std;

void

funcr

(int &num , int x)

void

func

(int num , int x)

//不能寫成void funcr(int num , int x),不正確的過載,導致不知道該呼叫誰。

int main()

//測試結果:

addr_x:

0xbf82293c

addr_rx:

0xbf82293c

in funcr,addr is:

0xbf82293c

after funcr , x=

177in funcr,addr is:

0xbf82293c

after funcr , rx=

211in func,addr is:

0xbf822920

after func , rx=

211

// an highlighted block

int a =5;

int &b = a;

cout

&a

&b<測試結果

550037f8f4

0037f8f4

注意&符號作為取位址符合作為引用宣告符的區別,在上述程式中的第2行,&在資料型別後,為引用宣告符。而第5、6行,&為取位址符。可以用這個方法作區分:只有在資料型別後&才是引用宣告符。

C 中,引用作為函式引數

引用作為函式引數 c 之所以增加引用型別,主要是把它作為函式引數,以擴 充函式傳遞資料的功能。c 函式傳參 1 將變數名作為實參和形參。這時傳給形參的是變數的值,傳遞是單向的。如果在執行函式期間形參的值發生變 化,並不傳回給實參。因為在呼叫函式時,形參和實參 不是同乙個儲存單元。同c 2 傳遞變數的...

C 引用與引用作為函式的引數

c 引用與引用作為函式的引數 參考 對乙個資料建立乙個 引用 他的作用是為乙個變數起乙個別名。這是c 對c語言的乙個重要補充。如何建立乙個引用 int a 5 int b a cout 列印結果 從上述結果可以看到,a與b位址是相同的。使用引用的一些注意事項 1 宣告乙個引用時,必須同時使之初始化,...

C 引用與引用作為函式的引數

對乙個資料建立乙個 引用 他的作用是為乙個變數起乙個別名。這是c 對c語言的乙個重要補充。如何建立乙個引用 int a 5 int b a cout以上宣告了b是a的引用,並把a,b的值和它們的位址列印出來。經過宣告後b是a別名,b與a代表的是同乙個變數,佔記憶體中同乙個儲存單元,具有同一位址。列印...