函式引數的傳遞方式

2022-08-10 03:15:14 字數 475 閱讀 7500

①、在編寫處理諸如int這樣的基本型別的函式時,可以向函式傳遞int數值,也可以傳遞指向int的指標。通常我們直接傳遞數值,只有需要在函式中修改該值時,我們才傳遞指標。

②、對於處理陣列的函式,只能傳遞指標,原因是這樣能使程式的效率更加高。

③、宣告指向常量的指標(不允許通過該指標修改被指向的值)

double rates[5] = ;

const double * pd = rates; //pd指向陣列開始處

第二行**把pc宣告為指向const double的指標。這樣就不可以用pc來修改它所指向的數值。

*pd = 29.89;  //不允許

pd[2] = 222.22;  //不允許

rates[0] = 99.99;  //允許,因為rates不是常量,並沒有宣告為常量,所以仍可以使用rates來修改其數值

指向常量的常指標,這個指標既不可以更改所指向的位址,也不可以修改所指向的資料。

函式引數傳遞的方式

按值傳遞 主調函式向呼叫函式傳遞引數實際上只是將實參的拷貝 即臨時副本 傳遞給了被呼叫函式,並不是實參本身,這樣被調函式不能直接修改主調函式中變數的值,而只能修改其私有的臨時副本的值。引用傳遞 對引用的操作等於對其指定的物件進行操作,當將實參傳遞給形參時,形參就指向了實參 指標傳遞 形參為指向實參位...

C 函式引數傳遞方式

引數傳遞有三種方式 值傳遞 pass by value 指標傳遞 pass by pointer 引用傳遞 pass by reference 程式測試 include stdafx.h include using namespace std 值傳遞 pass by value void fun1 ...

java函式引數傳遞方式

1 對於基礎型別,傳遞值 函式內對引數的操作不影響到外部的引數值。2 對於非基礎型別,傳引用。一般情況下,函式中引數的操作會影響到外部的引數值。如函式對student物件修改name屬性後,外部的student物件的name就變了 對於基礎型別的包裝型別,本來也適用於本規則,但實際卻另外蹊蹺 pub...