<pre name="code" class="cpp"><span style="font-size:24px;">#include<stdio.h>
#include<stdlib.h>
// 动态连续创建二维数组。 行数可变,列数是固定的。
// 1.分配一片连续的x*y*sizeof(int)大小的内存,用于存放数据 其类型为void
// 2.将内存首地址赋值给一个指针型变量
// 3.利用指针进行数据赋值访问和修改
// 记得释放内存
void main()
{
printf("请输出任意数和4,动态连续数组,其列数不可变\n");
int x, y;
scanf_s("%d%d", &x, &y);
//void *p = malloc(sizeof(int)*x*y); //分配内存 注意这里是void类型
//int(*px)[4] = p; // 将内存地址赋值给一个二位数组型指针,其默认列数为4
int(*px)[4] = malloc(sizeof(int)*x*y);
int num = 0;
for (int i = 0; i < x; i++)
{
for (int j = 0; j < y; j++)
{
px[i][j] = num++; //初始化二维数组
printf("%4d", px[i][j]);
}
printf("\n");
}
free(px);
getchar(); //getchar()能接受enter 所以要两个
getchar();
}</span>C语言动态连续数组
最新推荐文章于 2024-01-06 17:39:51 发布
本文介绍了一种使用C语言动态创建固定列数的二维数组的方法。通过malloc分配内存,并利用指针进行数据赋值和访问。文章提供了完整的代码示例,展示了如何初始化数组并正确释放内存。
879

被折叠的 条评论
为什么被折叠?



