c语言二维动态数组怎么定义

avatar
作者
筋斗云
阅读量:1

在C语言中,定义一个二维动态数组可以使用指针的指针来实现。下面是一个示例代码:

#include <stdio.h> #include <stdlib.h>  int main() {     int rows, cols;          printf("请输入二维数组的行数和列数:\n");     scanf("%d", &rows);     scanf("%d", &cols);      // 动态分配内存空间     int **arr = (int **)malloc(rows * sizeof(int *));     for (int i = 0; i < rows; i++) {         arr[i] = (int *)malloc(cols * sizeof(int));     }      // 输入数组元素     printf("请输入二维数组的元素:\n");     for (int i = 0; i < rows; i++) {         for (int j = 0; j < cols; j++) {             scanf("%d", &arr[i][j]);         }     }      // 输出数组元素     printf("二维数组的元素为:\n");     for (int i = 0; i < rows; i++) {         for (int j = 0; j < cols; j++) {             printf("%d ", arr[i][j]);         }         printf("\n");     }      // 释放内存空间     for (int i = 0; i < rows; i++) {         free(arr[i]);     }     free(arr);      return 0; } 

在上面的代码中,我们首先使用malloc函数动态分配了一块内存空间用于存储二维数组。然后,使用两个for循环来依次输入二维数组的元素。最后,使用两个for循环将二维数组的元素输出到屏幕上。最后,使用free函数来释放动态分配的内存空间。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!