Задать вопрос
@HoShik

Почему не расширяется массив структур?

Имеется структура, а так же глобальный массив структур:
typedef struct
{
	char nickname[32];
	int score;
}board;
board leaderboard[1];

В определенном моменте кода выполняются следующие действия:
nick_pos=(short)check_nick(nickname); // check_nick возвращает позицию ника в массиве в случае если таковой имеется и -1 если его нет
if(nick_pos!=-1) now_play=(int)nick_pos;
else {
        now_play=sizeof(leaderboard)/sizeof(board)-1;
        sprintf(leaderboard[now_play].nickname,"%s",nickname);
        int new_size=sizeof(leaderboard)+sizeof(board);
        realloc(leaderboard, new_size);
}

Но после каждого выполнения, массив не расширяется. Не могу понять почему...
  • Вопрос задан
  • 167 просмотров
Подписаться 1 Простой 15 комментариев
Решения вопроса 1
@HoShik Автор вопроса
Вопрос был решен в комментариях.
Я пытался расширить статический массив с помощью realloc (так нельзя, почему и как быть - см. комментарии Евгений Шатунов и Василий Дёмин).
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы