У меня есть следующая структура:
typedef struct _chess {
int **array;
int size;
struct _chess *parent;
} chess;
и у меня есть:
typedef struct _chess *Chess;
Теперь я хочу создать массив динамической длины для хранения указателей на шахматную структуру, поэтому Я делаю следующее:
Chess array [] = malloc(size * sizeof(Chess));
Это дает мне ошибку: неверный инициализатор.
И если я отбрасываю [] и делаю это:
Chess array = malloc(size * sizeof(Chess));
он компилируется без ошибок, но когда я пытаюсь установить элемент этого массива в NULL, выполнив:
array[i]=NULL;
я получаю сообщение об ошибке: несовместимые типы при назначении введите 'struct _chess' из типа 'void *'
Есть идеи, что я делаю неправильно? Спасибо.