漫谈C指针:指向另一指针地址的指针

转自:漫谈C指针:指向另一指针地址的指针


在前文中,我们看到,指针变量本身与其它变量一样也是在某个内存地址中的,如pi的内存起始地址是9。同样的,我们也可能让某个指针指向这个地址。
看下面代码:

1short int **ppi; /* 这是一个指向指针的指针,注意有两个“*”号 */
2*ppi = π

第一句:short int **ppi; —— 声明了一个指针变量ppi,这个ppi是用来存储(或称指向)一个short int * 类型指针变量的地址。

第二句:&pi那就是取pi的地址,**ppi = &pi就是把pi的地址赋给了ppi。即将地址值9赋值给ppi。如下图:




从图中看出,指针变量ppi的内容就是指针变量pi的起始地址。于是……
  • ppi的值是多少呢?—— 9。
  • *ppi的值是多少呢?—— 5,即pi的值。
  • **ppi的值是多少呢?——50,即i的值,也是*pi的值。
不用我说太多了,我相信你应明白这种指针了吧。

延伸阅读

此文章所在专题列表如下:
  1. 漫谈C指针:C语言变量的实质
  2. 漫谈C指针:变量赋值与取地址
  3. 漫谈C指针:指针是什么东西
  4. 漫谈C指针:指针与数组
  5. 漫谈C指针:声明指针常量
  6. 漫谈C指针:从const int i说起
  7. 漫谈C指针:const int *pi的语义
  8. 漫谈C指针:参数传递的三道题目
  9. 漫谈C指针:参数的值传递
  10. 漫谈C指针:参数的地址传递
  11. 漫谈C指针:参数的引用传递
  12. 漫谈C指针:回顾指针概念
  13. 漫谈C指针:指向另一指针地址的指针
  14. 漫谈C指针:一个指针应用实例
  15. 漫谈C指针:函数名其实也是指针
  16. 漫谈C指针:函数调用的指针写法
  17. 漫谈C指针:定义函数的指针类型
  18. 漫谈C指针:函数指针作为函数参数使用

本文地址:http://www.nowamagic.net/librarys/veda/detail/2131,欢迎访问原出处。