Обычно я просто скрываю форумы, пока не могу найти подсказку, чтобы помочь мне, но для этого ... У меня нет идея.Создание стека в C, получение ошибки "error: expected") 'before' * 'token "
Так соответствующие куски кода
struct com_stack
{
unsigned el_num;
struct command *st;
unsigned top;
};
void com_push (com_stack* s,command input) //error regarding this line
{
if(s->top == (s->el_num - 1))
{
s->el_num+=64;
s->stk=(command*)realloc(s->stk,sizeof(struct command)*s->el_num);
}
s->stk[s->top]=input;
s->top++;
}
Я считаю, что я создал правильно-структуру для стека, который будет содержать команды. Для el_num позже будет назначен начальный размер стека, а top - это номер элемента, который находится сверху.
Я не уверен, правильно ли выполняю функцию ввода. То, что я хотел бы сделать, это отправить указатель на стек и единственную команду, которую я пытаюсь нажать.
Любая помощь или совет будут очень признательны.
Вы не можете использовать «голое» имя 'struct' в C. Либо добавьте' typedef', либо используйте 'struct com_stack * s'. – dasblinkenlight
Привет, спасибо за ваш ответ. Я только что изменил struct com_stack * s, и теперь у меня возникает целый набор ошибок.
ожидается декларация спецификаторы или «...» перед „команды“
я думаю, что мне нужно STRUCT линии всасывания команды
„структура com_stack“ не имеет член с именем „СТК“
..
Я получаю кучу этих данных, и я не уверен, что делать. Прошло некоторое время с тех пор, как я последний раз закодировал, и это сбивает с толку.
Благодарим за отзыв, хотя. – Jack
Ваш 'struct com_stack' * не имеет члена с именем' stk' - он имеет имя 'st'. –