В настоящее время я застрял с устаревшим кодом, использующим массивы нескольких измерений:
#define B 25
int Table[A][B][C][D][E][F];
Мне нужно изменить константу B на динамическое значение. Дело в том, что мне нужно сохранить таблицу такой же, какой была раньше, чтобы у меня не было ничего, кроме перераспределения ресурсов.
Я хотел бы получить ваши идеи / комментарии о том, как это сделать.
В настоящее время я пытаюсь определить конец таблицы ([C] [D] [E]), чтобы распределить ее по размерам во время выделения, но я застрял с ошибками из-за того, что таблица не соответствует устаревшему коду ...
//int32_t Table[A][B][C][D][E][F];
int32_t* Table[A];
typedef int32_t type_1_t[E][F];
typedef type_1_t type_2_t[C][D];
for (int i = 0; i < A; i++)
Table[i] = (int32_t*) malloc (sizeof (type_2_t) * dynamic_B);
Используя это, я получаю ошибку («ошибка: подписанное значение не является ни массивом, ни указателем, ни вектором») при использовании таблицы.
XXX = Table [a][b][c][d][e][f];