变量有两个属性
-地址 取地址的符号 &
-值 如果是指针类型的变量,可以用 * 来获取这个指针变量所指的变量的值;
** 可以快速获取取两级指针所指的值
#include <stdio.h>
int main ()
{
int V;
int *Pt1;
int **Pt2;
V = 100;
/* 获取 V 的地址 */
Pt1 = &V;
/* 使用运算符 & 获取 Pt1 的地址 */
Pt2 = &Pt1;
/* 使用 pptr 获取值 */
printf("var = %p\n", V );
printf("&var = %p\n", &V );
printf("Pt1 = %p\n", Pt1 ); /*对应 V 的地址 */
printf("&Pt1 = %p\n", &Pt1 ); /*对应 Pt1 的地址 */
printf("*Pt1 = %p\n", *Pt1 ); /*对应 v 的值,指针变量储存地址对应变量的值*/
printf("Pt2 = %p\n", Pt2 );
printf("&Pt2 = %p\n", &Pt2);
printf("*Pt2 = %p\n", *Pt2);
printf("&Pt2 = %p\n", &Pt2);
printf("**Pt2 = %p\n", **Pt2); /* 指针的指针 的值 */
return 0;
}
结果如下:
var = 0x64
&var = 0x7fffc6fd3a9c
Pt1 = 0x7fffc6fd3a9c
&Pt1 = 0x7fffc6fd3a90
*Pt1 = 0x64
Pt2 = 0x7fffc6fd3a90
&Pt2 = 0x7fffc6fd3a88
*Pt2 = 0x7fffc6fd3a9c
&Pt2 = 0x7fffc6fd3a88
**Pt2 = 0x64