C 语言二级指针传递函数:改变二级指针指向的值
C 语言二级指针传递函数:改变二级指针指向的值
下面是一个例子,展示了如何定义一个二级指针的变量,并将其传递给一个函数来改变该二级指针的值。
#include <stdio.h>
#include <stdlib.h>
// 函数参数是二级指针,用于改变二级指针的值
void changeValue(int** ptr) {
int newValue = 20;
*ptr = (int*)malloc(sizeof(int)); // 分配内存
**ptr = newValue; // 修改二级指针指向的值
}
int main() {
int* ptr = NULL; // 定义一个二级指针变量
changeValue(&ptr); // 将二级指针传递给函数
printf("Value after change: %d\n", *ptr); // 输出修改后的值
free(ptr); // 释放内存
return 0;
}
在上面的例子中,我们首先定义了一个二级指针变量 'ptr',并将其初始化为 'NULL'。然后,我们调用 'changeValue' 函数,并将 'ptr' 的地址作为参数传递给函数。在 'changeValue' 函数中,我们将分配一块内存,并将其地址赋给 'ptr' 所指向的一级指针。然后,我们修改这块内存的值为 '20'。最后,在 'main' 函数中,我们输出修改后的值,并释放分配的内存。
原文地址: https://www.cveoy.top/t/topic/bSvC 著作权归作者所有。请勿转载和采集!