详解C语言指针的指针,不信你还不懂!!!

  指针是地址,指针的指针还是地址,只不过是保存的某指针变量的地址。废话不说,上菜,看代码:

 1 #include <stdio.h>
 2 #include <stdlib.h>
 3 //关于指针的指针,赋值以及其意义
 4 int main()
 5 {
 6     int a=8;//定义一个int型变量a,假设其在内存中的地址是1000
 7     int *q;//定义指针变量q,q本身也需要内存存储,假设其地址是2000
 8     q=&a;//给q赋值,即a的地址1000。此时q=1000,*q=a=8;
 9     int **p;//定义指针的指针变量p,同理p也需要内存存储,假设其地址是3000
10     p=&q;//给变量p赋值,即q的地址2000.此时p=2000,*p=1000,**p=a=8
11     printf("%3d,%3d,%3d,%3d,%3d,%3d",a,q,*q,p,*p,**p);//输出值依次:8,1000,8,2000,1000,8
12     return 0;
13 }

  注释足够详细,你看懂了吗?有问题欢迎留言交流哦。

posted @ 2013-04-05 18:38  楠楠IT  阅读(2872)  评论(0编辑  收藏  举报