我正在将一些MATLAB代码翻译成C语言,并且我要转换的脚本大量使用了具有10*100*300个复杂条目的3D数组。阵列的大小还取决于传感器的输入,理想情况下阵列应该是动态分配的。到目前为止,我已经尝试了两种方法,第一种是平面一维数组,如下所示用起来会伤到我的大脑。我还尝试了一个指针数组的数组 int ***array = malloc(3*s
如何在C中分配和声明三维结构数组?首先分配数组还是声明数组?我觉得你必须先分配它,这样你就可以声明它了,所以它在堆里,但是你怎么分配一些还没有完成的东西呢?另外,您应该一次性地分配它,还是按元素分配呢?我是否也正确地将结构放入数组中?我对该如何做的猜测是:struct myStruct{ int b;typedef struc
据我所知,当我分配三维数组时,我确实得到了线性内存,它只是通过定义步长来解释为三维的。所以我想使用线性索引来访问三维数组,但是如何使用线性索引来获得第一个元素--例如,假设int32,为了得到第11个元素,我应该从数组开始移动320位,然后将这些位解释为int --似乎比从线性索引中计算下面我试着去做,但我还是做错了,因为我在这里,只要我得到解除第二数组的第0元素,而不是我想要的。C++代码
int intsss[3][3][3] =