C++ 二级指针传参修改值详解
要改变二级指针指向的值,需要传递指向指针的指针。
下面是一个示例代码:
#include <iostream>
void changeValue(int** pp)
{
// 修改指针pp指向的值
**pp = 99;
}
int main()
{
int value = 10;
int* p = &value;
int** pp = &p;
std::cout << 'Before change: ' << **pp << std::endl;
// 传递指向指针的指针pp
changeValue(pp);
std::cout << 'After change: ' << **pp << std::endl;
return 0;
}
输出结果:
Before change: 10
After change: 99
在changeValue函数中,参数pp是指向指针的指针,在函数中通过**pp可以修改指向的值。在main函数中,将p的地址传递给pp,然后将pp传递给changeValue函数,通过**pp修改了p指向的值。最后在main函数中打印**pp的值,可以看到值已经被成功修改。
原文地址: https://www.cveoy.top/t/topic/bSwz 著作权归作者所有。请勿转载和采集!