指针的指针
指针的指针就是将指针的地址存放在另一个指针里面。
指针存放的是对象在内存中的地址。
通常,一个指针包含一个变量的地址。当我们定义一个指向指针的指针时,第一个指针包含了第二个指针的地址,第二个指针指向包含实际值的位置。
" & "是取地址,意思是返回当前对象在内存的中的地址
" * "是取值,意思是返回一个指针所指向的对象,如果当前指针保存的是一个内存地址,那么*就返回这个内存地址所对应的对象
一个指向指针的指针变量必须如下声明,即在变量名前放置两个星号。
例如,下面声明了一个指向 int 类型指针的指针:
int **var;
双重间接访问
表达式 | 相当的表达式 |
---|---|
a | 12 |
b | &a |
*b | a,12 |
c | &b |
*c | b,&a |
**c | &b,a,12 |
&:取地址
*:取值