小白教程
所有教程
关于
Search
172.70.130.160
172.70.130.160
参数设置
贡献
退出
操作
编辑
移动
保护
信息
历史
删除
查看“Cpp pointer to pointer”的源代码
本页内容
上一节:
Cpp_array_of_pointers
下一节:
Cpp_passing_pointers_to_functions
因为以下原因,您没有权限编辑本页:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
{{DISPLAYTITLE:C++ 指向指针的指针}}[[Category:cpp pointers|5]] = C++ 指向指针的指针(多级间接寻址) = [[cpp pointers|C++ 指针]] 指向指针的指针是一种多级间接寻址的形式,或者说是一个指针链。 指针的指针就是将指针的地址存放在另一个指针里面。 通常,一个指针包含一个变量的地址。当我们定义一个指向指针的指针时,第一个指针包含了第二个指针的地址,第二个指针指向包含实际值的位置。 一个指向指针的指针变量必须如下声明,即在变量名前放置两个星号。例如,下面声明了一个指向 int 类型指针的指针: <pre> int **var; </pre> 当一个目标值被一个指针间接指向到另一个指针时,访问这个值需要使用两个星号运算符,如下面实例所示: <sample title="" desc="" lang="c" hererun="1"> #include <iostream> using namespace std; int main () { int var; int *ptr; int **pptr; var = 3000; // 获取 var 的地址 ptr = &var; // 使用运算符 & 获取 ptr 的地址 pptr = &ptr; // 使用 pptr 获取值 cout << "var 值为 :" << var << endl; cout << "*ptr 值为:" << *ptr << endl; cout << "**pptr 值为:" << **pptr << endl; return 0; } </sample> 当上面的代码被编译和执行时,它会产生下列结果: <pre> var 值为 :3000 *ptr 值为:3000 **pptr 值为:3000 </pre> [[cpp pointers|C++ 指针]]
返回至“
Cpp pointer to pointer
”。
上一节:
Cpp_array_of_pointers
下一节:
Cpp_passing_pointers_to_functions