c一:指针引用(int * p )和指针(int * q)的区别
生活随笔
收集整理的這篇文章主要介紹了
c一:指针引用(int * p )和指针(int * q)的区别
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
#include <iostream>using namespace std;int g = 300;void print(int p, int q)
{cout << p << endl << q << endl;
}/*
* 1. int *&p 定義一個指針引用,既可以改變指針指向的內容,也可以改變指針本身,p只是一個名字, 不會為p開辟內存空間
(說白了,指針引用只是指針的一個別名)
* 2. int *q 定義一個指針,可以改變指針指向的內容,但無法改變指針本身.
*/
void set(int* &p, int* q)
{p = &g; // p是引用類型,可以改變傳進參數的指向q = &g; // q 不會改變參數的指向
}
int main()
{int a = 10, b = 20;int *pa = &a, *pb = &b;print(a,b);cout << pa << endl << pb << endl;set(pa, pb); // pa現在指向g,但pb還是指向bprint(a, b);cout << pa << endl << pb << endl;print(*pa, *pb);return 0;}
總結
以上是生活随笔為你收集整理的c一:指针引用(int * p )和指针(int * q)的区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python十二:字符串格式化
- 下一篇: python十三:函数