【C++】Pointer to Pointer

Pointer to Pointer 顾名思义就是指标的指标~

它可能是一个变数的地址的地址~

我们要在function间~传递Pointer的时候~ 会用到Pointer to Pointer~


学习目标: Pointer to Pointer的概念及实务

学习难度: ☆☆★


Pointer函式传输parameter没side effect

#include <iostream>using namespace std;int value1 = 5;void changePtr (int *valuepointer){    valuepointer = &value1;}int main (){    int value2 = 10;        int *value2Ptr = &value2;        changePtr (value2Ptr);//因为这里还是copy的概念....类似call by value        printf ("%d\n", *value2Ptr); //will print 10        return 0;}

Pointer Pointer函式传输parameter有side effect

#include <iostream>using namespace std;int value1 = 0;void changePtr (int **valuepointer) //value2指标的地址{    *valuepointer = &value1; //value2指标= value1地址}int main (){    int value2 = 1; //value2整数        int *value2Ptr = &value2; //value2指标        changePtr (&value2Ptr); //取value2指标的地址丢去函式        printf ("%d\n", *value2Ptr);///will print 5        return 0;}

参考资料:

http://low-understated.blogspot.com/2009/04/pointer-to-pointer.html


关于作者: 网站小编

码农网专注IT技术教程资源分享平台,学习资源下载网站,58码农网包含计算机技术、网站程序源码下载、编程技术论坛、互联网资源下载等产品服务,提供原创、优质、完整内容的专业码农交流分享平台。

热门文章