C語言引用 的個人理解

2021-08-05 21:24:27 字數 410 閱讀 4222

因為我學藝不精,所以有時候交換值函式時有時候會寫成下面這樣int main(int argc, const char * argv) {

// insert code here...

int x = 3;

int y = 5;

swap(&x,&y);

cout《這樣就能夠成功交換x和y的值。

為什麼會有不同的效果呢,按照我個人的理解是,上面的區域性變數a和b只是相當於新建乙個指向x和y的指標,只是交換a和b指標位址的值並不能改變x和y的位址的指向,所以x和y的值還是沒有改變。

而採用引用的話,實際上就是建立乙個指標指向主題函式中的x和y,然後在操作的就是這個指標指向的值。這樣才能改變主體函式中x和y的值。

以上僅僅是個人的理解,方便自己理解**,也有可能實際並不是我想的這樣,僅供參考!

個人c語言中指標的理解

定義指標 int p int i p i p是指向i位址的指標 p 10 指的是i的值變成了10指標在使用前一定要賦值 確定指標指向 為指標變數賦的值必須是乙個位址 將指標變數初始化為空指標,意為該變數不指向任何值 int ptr null 將變數位址賦值給指標 int a int p a 或者 i...

C 引數傳遞 引用傳遞的一些個人理解

2013 07 30 17 09 26 1 using system 2class program35 static void main b a,b 6 7改成引用傳遞後 8using system 9class program 1012 static void main b a,b 13 1 6行...

C 指標的引用理解

指標可以作為引數傳遞直接修改所指的變數的值,如下 void change int p int main 指標傳遞實際上也是值傳遞,傳遞的值便是指標的位址,執行 p 20後,雖然傳遞的是乙個位址的副本,但是副本的值就是變數的位址,執行後,所指向的位址的值變成了20,達到了修改變數值的目的。所以,當需要...