指標和指標的引用作為引數 c

2021-09-30 12:23:12 字數 856 閱讀 7820

#指標和指標的引用作為引數–c++

指標都清楚,存放變數位址的變數。那麼指標指向的資料是可以改變,而指標本身是不可以改變的。表示為: *p;

指標的引用, 相當於指標的指標。作為引數傳遞時,這樣指標的數值是可以改變的,表示為: &p

fun(int * pa); // pa的數值在函式返回後不會變化

fun(int& pa); // pa的數值在函式返回可能會發生變化,如果fun函式內部對pa賦值的話

指標作為引數傳遞

e.g

int m_value = 1;

void func(int *p)

int main(int argc, char *ar**)

int main(int argc, char *ar**)

{ int n = 2;

int *pn = &n;

cout << *pn << endl;

func(&pn);

cout << *pn 《結果2,5

int m_value = 1;

void func(int *&p)

{p = &m_value;

// 也可以根據你的需求分配記憶體

p = new int;

*p = 5;

int main(int argc, char *ar**)

{int n = 2;

int *pn = &n;

cout << *pn << endl;

func(pn);

cout << *pn <*& 指標本身可變;

指標和引用作為函式傳遞引數

引用傳遞 void outputnumber int nnumber 設定引用型別引數 intmain intargc,char argv 指標傳遞 void outputnumber int pnumber 使用指標作為函式引數 intmain intargc,char argv 輸出結果是一樣的...

c 中指標的引用 作為引數傳遞

我們都知道c 中的引數傳遞是值傳遞,想要通過函式修改形參,一般使用指標或者引用。那麼有時候我們對於傳入的指標位址希望做修改怎麼辦呢?今天在寫乙個樹結構的題時碰到這個問題 大概 是 void insert array treenode node,int array,int left,int right...

指標和引用作為引數的不同(一)

總的來說,在以下情況下你應該使用指標 一是你考慮到存在不指向任何物件的可能 在這種情況下,你能夠設定指標為空 二是你需要能夠在不同的時刻指向不同的物件 在這種情況下,你能改變指標的指向 如果總是指向乙個物件並且一旦指向乙個物件後就不會改變指向,那麼你應該使用引用。摘自 more effective ...