【发布时间】:2015-06-19 21:51:49
【问题描述】:
如何在 C 和动态内存分配中使用指向数组的指针创建二维数组,而不使用 typedef 和在指向数组的指针声明时不使用 malloc?我们如何为指向数组的指针进行类型转换? 一般来说,我们如何创建 a[r][c] ,从 int (*a)[c] 开始,然后为“r”行分配内存?
例如。如果我们需要创建a[3][4],我们是这样做的吗?
int (*a)[4];
a= (int (*) [4]) malloc (3*sizeof (int *));
【问题讨论】:
-
我很惊讶还没有人告诉这个,但它是not good practice to cast the result of
malloc()in C.
标签: c pointers multidimensional-array