我需要通過一個可以容納一個字符串的動態行長度數組實現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