指针理解
指针:全名指针变量,值为定义后type的地址,所以它报存的是地址0xFFFFFF,而加上*号即是取得这个地址上的值。
int *p= &k
cout<<p 与 cout<<&p p是k的地址,&p才是p地址。说明cout <<p ,p表示地址,*p是计算这个地址的值。
关于*p求值过程。想象 1、先 cout<<p 2、再计算p(是一个地址)对应的值
pp表示 二重指针
地址值0xFFFCCC0xFFFFFdd
p的表示方法
地址值0xFFFFFdd0xFFFFFF
k=2的表示方法
地址值0xFFFFFF123
二重指针
二重指针:定义时必须指向一个指针变量。int **pp= & p; int *p=&k
*pp=p=&k
指针变量本身需占用内存,以及它保存的值:为一段内存地址。弄清楚自己地址与保存值就搞清楚了!
**pp计算过程:1、*pp 先计算pp=&p(即p地址)再计算&p对应的值=变量k的地址,,计算,为p值。2、再* *pp则拿到p地址的值