C - expected expression before '=' token... sur la ligne sans '='

Je deviens fou à essayer de comprendre ce message d'erreur qui n'a pas de lien évident entre la réalité/mon code. J'ai cherché ici et de venir à une conclusion: vous allez détester le pointeur caché par typedef. Désolé, c'est hors de mon contrôle--prof a fourni le code de cette façon. Je suis en train de modifier le code comme indiqué dans le problème. Je saute plein de nœuds pour éviter les appels malloc sur chaque fonction de push et de les stocker dans une école secondaire de la pile. Le MakeEmptyS fonction initialise la Pile avec INITIAL_SIZE nœuds. GrowEmptyS ajoute plus de nœuds à la Pile de nœuds vides

de la pile.c a la fonction suivante:

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);
    }
  }
}

J'obtiens cette erreur: "de la Pile.c:53:22: erreur: attendu expression before '=' token", où la ligne 53 est GrowEmptyS( S, INITIAL_SIZE );

Pour référence, voici la croissance de la fonction:

   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);
       }
   }
Même si votre professeur vous a donné un mauvais code, vous devriez toujours essayer de le simplifier avant de le poster ici. Comment sommes-nous censés pour déboguer la syntaxe de GrowEmptyS(S, INITIAL_SIZE) si vous ne nous montrez pas à la définition de INITIAL_SIZE? Aussi, est GrowEmptyS un préprocesseur macro ou une fonction? Fournissant une brève, autonome et correcte (compilable), exemple permettra de résoudre toutes ces questions. Voir sscce.org
Vous devez également dire combien de INITIAL_SIZE est défini.
Désolé de ne pas fournir la définition de INITIAL_SIZE. Comme je l'ai dit, GrowEmptyS est une fonction. Mais la prochaine fois, je vais donner le plein, source compilable. Merci!

OriginalL'auteur TravisThomas | 2011-10-30