*&p和**p

来源:互联网 发布:药天下软件 编辑:程序博客网 时间:2024/05/02 01:54
int *a;int *&p=a;int b=10;p=&b;/** int &p=a;//p是a的别名,p和a是同一个整型变量,*           //占用同一块内存空间* int *a;* int *&p=a;//把int* 看成一个类型(整型指针),*            //p是a的别名,就是定义一个整型指针*            //a的引用,即a的别名是p* int b=10;* p=&b;//指针a也是b的地址,其指向的内容是10*/int i=5;int *a=&i;int **p=&a;cout<<**p<<endl;/** int **p=&a;//p是指向指针的指针,p指向指针*              //变量a,a指向i* cout<<**p<<endl;//表示输出i的值5*/* (p=&n)=5;//取n的地址赋给p,最后就是n=5int **p;*(*(p+1)+2)=5;/** 对p代表的地址右移一个单位,取值(取的值仍是* 指针),对该值所代表的地址右移两个单位,再对新* 地址取值* 指针移动若干单位,所增加的地址值取决于指针的类* 型,通用公式:*      T *p;p+N=(p的值)+N*(sizeof(T))*/

0 0
原创粉丝点击