C语言:使用malloc开辟一个3*4的二维数组,并将内容初始化为1-12
作者:野牛程序员:2023-07-13 17:59:34C语言阅读 2787
可以使用malloc
函数在C语言中动态分配内存来创建一个3x4的二维数组,并将其内容初始化为1-12。以下是一个示例代码:
#include <stdio.h> #include <stdlib.h> int main() { // 动态分配内存 int** array = (int**)malloc(3 * sizeof(int*)); for (int i = 0; i < 3; i++) { array[i] = (int*)malloc(4 * sizeof(int)); } // 初始化数组 int count = 1; for (int i = 0; i < 3; i++) { for (int j = 0; j < 4; j++) { array[i][j] = count++; } } // 打印数组 for (int i = 0; i < 3; i++) { for (int j = 0; j < 4; j++) { printf("%d ", array[i][j]); } printf("\\n"); } // 释放内存 for (int i = 0; i < 3; i++) { free(array[i]); } free(array); return 0; }
这段代码中,首先使用malloc
分配了一个指针数组array
,它包含3个指针,分别指向每一行的数组。然后,我们使用嵌套的malloc
循环为每一行分配了4个整数的内存空间。
接下来,使用两个循环初始化数组的内容,从1开始递增。
最后,使用循环打印数组的内容,并释放了动态分配的内存空间。
运行该代码将输出以下结果:
1 2 3 4 5 6 7 8 9 10 11 12
请注意,使用完动态分配的内存后,应该通过调用free
函数来释放它们,以避免内存泄漏。
野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892

- 上一篇:c语言中3|4代表什么意思
- 下一篇:c语言程序必须有main函数吗?