【发布时间】:2020-03-06 07:35:58
【问题描述】:
我正在尝试像这样声明一个长的二维数组,以便稍后将长数组复制到大小合适的小数组中:
double arr_long[MAX][2]; double arr[][];
这样我以后可以使用:
arr = malloc(amount*sizeof(double[2]));
然后复制所有元素。 (我正在用一个简单的 for 循环填充长数组) 但是我的编译器给了我一个错误,说关于声明“数组类型的元素类型不完整”。 不指定大小就不能声明多维数组吗?
【问题讨论】:
-
你可以做一个指向 2 数组的指针。
double (*arr)[2]。但是struct something { double elements[2]; }和struct something *arr;更容易
标签: c multidimensional-array malloc