c语言二阶指针
二阶指针(double pointer)在C语言中是指指向指针的指针。二阶指针常常用于动态分配二维数组,或者用于修改其他指针的值。
以下是一个使用二阶指针创建和修改二维数组的示例:
cinclude<stdio.h>
include<stdlib.h>
int main() {
int **array2D; // 二阶指针,指向一个整型指针的数组
int rows = 5, cols = 3; // 假设有5行3列的二维数组
// 动态分配二维数组
array2D = (int **)malloc(rows * sizeof(int *));
for(int i = 0; i < rows; i++) {
array2D[i] = (int *)malloc(cols * sizeof(int));
}
// 使用二阶指针访问和修改二维数组的元素
for(int i = 0; i < rows; i++) {
for(int j = 0; j < cols; j++) {
array2D[i][j] = i * cols + j; // 初始化元素值
}
}
// 打印二维数组的元素
for(int i = 0; i < rows; i++) {
for(int j = 0; j < cols; j++) {
printf("%d ", array2D[i][j]);
}
printf("\n"怎么定义二维数组c语言);
}
// 释放动态分配的内存
for(int i = 0; i < rows; i++) {
free(array2D[i]);
}
free(array2D);
return 0;
}
在上述代码中,我们首先定义了一个二阶指针 array2D,然后使用 malloc 为每一行分配内存,使得 array2D[i] 指向一个包含 cols 个整数的数组。然后,我们使用 array2D[i][j] 来访问和修改二维数组的元素。最后,我们释放了动态分配的内存。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论