C - ожидаемое выражение перед токеном '='… в строке без '='

Я схожу с ума, пытаясь понять это сообщение об ошибке, которое не имеет очевидной связи с реальностью / моим кодом. Я искал здесь и пришел к одному выводу: вам не понравится указатель, скрытый typedef. Извините, это вне моего контроля - проф предоставил код таким образом. Я редактирую код, как указано в задаче. Я выталкиваю полные узлы, чтобы избежать вызовов malloc для каждой функции push, и сохраняю их во вторичном стеке. Функция MakeEmptyS инициализирует стек с узлами INITIAL_SIZE. GrowEmptyS добавляет больше узлов в стек пустых узлов

stack.c имеет следующую функцию:

void
MakeEmptyS( Stack S )
{
  PtrToNode tmp;
  if ( S == NULL )
    Error( "Must use CreateStack first" );
  else
  {
    GrowEmptyS( S, INITIAL_SIZE);
    while (!IsEmptyS( S) )
    {
        tmp = TopopNode( S );
        PushEmpty( S, tmp);
    }
  }
}

Я получаю эту ошибку: «Stack.c: 53: 22: error: ожидаемое выражение перед токеном '='», где строка 53 - GrowEmptyS (S, INITIAL_SIZE);

Для справки, вот функция Grow:

   void
   GrowEmptyS( Stack S, int NumToAdd )
   {
       int i;
       PtrToNode TmpCell;
       for( i = 0; i < NumToAdd; i++ )
       {
         TmpCell = malloc( sizeof(struct Node));
         if ( TmpCell == NULL )
           FatalError( "Out of Space!!!");
         else
           PushEmpty(S,TmpCell);
       }
   }
9
задан TravisThomas 30 October 2011 в 01:50
поделиться