Я хочу перераспределить массив 2d указателей. Он должен быть динамическим следующим ascii
+=====+==============+==============+==============+==============+======+
| | [0] | [1] | [2] | [3] | [..] |
+=====+==============+==============+==============+==============+======+
| [0] | 'a' | 'b' | 'c' | 'd' | |
+-----+--------------+--------------+--------------+--------------+------+
| [1] | object[0][0] | object[1][0] | object[2][0] | object[3][0] | |
+-----+--------------+--------------+--------------+--------------+------+
| [2] | object[0][1] | object[1][1] | object[2][1] | object[3][1] | |
+-----+--------------+--------------+--------------+--------------+------+
| [3] | object[0][2] | object[1][2] | object[2][2] | | |
+-----+--------------+--------------+--------------+--------------+------+
| [4] | object[0][3] | | object[2][3] | | |
+-----+--------------+--------------+--------------+--------------+------+
| [5] | object[0][4] | | | | |
+-----+--------------+--------------+--------------+--------------+------+
| [6] | object[0][5] | | | | |
+-----+--------------+--------------+--------------+--------------+------+
В этой таблице размер каждого столбца отличается. Как я могу сделать это с 2d структурой. Я выделил матрицу с помощью malloc. Но я хочу перераспределить второй индекс. Как эта матрица[25][n]. N должно быть перераспределено для каждого столбца с разным размером. Но это должно быть во время выполнения
Код :
#include <stdio.h>
#include <stdlib.h>
typedef struct{
char word[20];
}Dictionary;
Dictionary **object;
void initializeDictionary()
{
// Create matrix [29][1]
object=(Dictionary**)malloc(29 * sizeof(Dictionary*));
object[0]=(Dictionary*)malloc(1*sizeof(Dictionary));
}
array[row][col]
, а используетarray[col][row]
, что гарантированно сбивает с толку - по крайней мере, меня и, вполне возможно, их, и, возможно, других полувнимательных читателей на SO . - person Jonathan Leffler   schedule 14.04.2019