Bonsoir,

J'aimerai réaliser une fonction qui insère l'élement v en tête de la pile. Mais si le pointeur sur la pile est initiallement NULL, je veux crée une nouvelle pile.
Voici mon code, qui ne compile pas et m'affiche : expected expression before ‘element_t’

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
typedef struct element {
  int valeur;
 
 struct element *prec;
} element_t;
 
static element_t
*pile_head(element_t *pile, int v)
{
  if (pile == NULL)
    element_t *pile1 = NULL;
  element_t *element = malloc(sizeof(element_t));
 
 if (v != 0) {
    element->valeur = v;
    element->prec = pile;
    pile = element;
    return pile;
}
  return pile1;
}
Merci d'avance