我需要通过一个可以容纳一个字符串的动态行长度数组实现10个列。到目前为止,我试图通过使用intiger而不是srings来进行实验,以简化操作。动态分配二维数组
这是我到目前为止的代码:
int** pArray = (int**)malloc(10*sizeof(int*));
for (i = 0; i < 10; i++)
{
pArray[i] = (int*)malloc(sizeof(int));
}
所以现在我知道,我创建了一个10×阵列。现在我需要动态realoc根据需要出现的每一行..
在这一点上我卡住了。任何援助将大大apprieciated
如果是我,直到我知道我是多么不分配行。只要将指针设置为NULL,当你去访问它,它是NULL,然后分配空间。 –
[也不要施放malloc的结果。](http://stackoverflow.com/questions/605845/do-i-cast-the-result-of-malloc) – pzaenger
对于矩阵分配一个向量并计算复杂索引(例如:'col * rows + row')更有效。我绝不会在你的路上这样做。 (分配的价格是多少?更改内存上下文的价格是多少(将数据重新加载到缓存中)等等) – Naszta