C++ 指向指针的指针(多级间接寻址)
指向指针的指针,就是一个指针指向的地址保存的是另一个指针的地址,另一个指针保存的才是实际值的位置
指向指针的指针是一种多级间接寻址的形式
一个指向指针的指针变量必须如下声明,即在变量名前放置两个星号
int **var;
当一个目标值被一个指针间接指向到另一个指针时,访问这个值需要使用两个星号运算符
/** * file: main.cpp * author: 简单教程(www.twle.cn) * * Copyright © 2015-2065 www.twle.cn. All rights reserved. */ #include <iostream> int main () { double pi = 3.1415926; // 获取 pi 的地址 double *ptr_pi = π // 获取 ptr_pi 地址 double **pptr_pi = &ptr_pi; // 使用 ptr_ptr_pi 获取值 std::cout << "pi = " << pi << std::endl; std::cout << "*ptr_pi = " << *ptr_pi << std::endl; std::cout << "**pptr_pi =" << **pptr_pi << std::endl; return 0; }
编译和运行以上范例,输出结果如下
pi = 3.14159 *ptr_pi = 3.14159 **pptr_pi =3.14159