- 此问题在此处已有答案**:
Heap allocate a 2D array (not array of pointers)(7个答案)
3天前关闭。
一般性问题。
我遇到过一个程序,它有一个二维数组,如ps [i][j],问题是我知道j的大小是3,但我不知道i的大小(这就是我想使用malloc和**free()**的原因。我怎样才能在这样的数组中使用malloc呢?)因为它不是一维数组而是二维数组,但问题是我不知道i的大小。
ps[?][3]
j的大小是已知的,其为3,但是i的大小是未知的。
感谢您宝贵的时间,我期待您的答复
1条答案
按热度按时间8yparm6h1#
您需要声明一个指向给定大小的数组的指针,例如
unsigned int (*arr)[3]
,然后为该类型数组的i
元素分配空间:更妙的是:
然后按如下方式释放它: