在学C/C++的时候,我们都会了解到一级指针,int* i = NULL;   和二级指针int ** pp = NULL; 但是具体的一些应用我们可能很难理解,如果我们要取int*的地址,我们就需要int**,这是因为指针传递本质上还是值传递,本质很难理解,我们通过实例说明。

在实际的开发过程中,究竟如何使用二级指针呢?在这里,我们通过形参采用二级指针来修改实参的例子。

我们做的这个例子是利用指向指针的指针申请内存

----------------------------我是分割线--------------------------------------------

# include <iostream>
usning namespace std;

void GetMem(char** p, int num)
{
    *p = new char[num];
}

int main(void)
{
    char*  pChar = NULL;
    GetMem(&pChar, 10);
    
    if(NULL != pChar)
    {
        cout << "memory new success !" << endl;       
    }
    else
    {
        cout <<"memort new is failure! " << endl;
    }

    return 0;
}

----------------------------------------------------------------------------------------

代码分析:

   1、利用指向指针的指针作为函数参数

   2、对&pChar所指向的区域,也就是pChar进行修改

达到了申请内存的目的

----------------------------------------------------------------------------------------