在矩阵中添加其他列

时间:2014-04-21 02:05:20

标签: c arrays matrix 2d

我使用以下代码动态为2d数组分配内存,

int **matrix = (int **) malloc(testVals[m].rows*sizeof(int));
for(int i = 0 ; i < testVals[m].rows ; i++)
    matrix[i] = (int *) malloc(testVals[m].columns*sizeof(int));

但我需要根据要求添加额外的行和列。我可以像这样添加额外的行,我将矩阵转换为方矩阵

for(i = rows ; i < cols ; i++)
mat[i] = (int *) malloc(cols*sizeof(int));

但如何添加列呢?

1 个答案:

答案 0 :(得分:0)

如果您需要添加列,可以在每行使用realloc: 也就是说,如果您需要添加N列,则通过将每一行扩展N来重新分配每一行。

编辑: 您可以查看此possible duplicate