bonjour , je voulais empiler des caractere dans une pile en adoptant la representation contegue mais au niveau de l'exécution il ya une probleme
voici mon travaile
je travaile sur turbo c++, si un erreus existe me eclaire et merci en avanceCode:pile.h void creer(); unsigned pile_vide(); void empiler(char ); char dernier(); void depiler(); pile.c #include<assert.h> #include"pile.h" #define n 10 struct pile {char cle[n]; int sommet;}; static struct pile p; void creer_pile() {p.sommet=-1;} unsigned pile_vide() {return(p.sommet==-1);} char dernier() {assert(!pile_vide()); return(p.cle[p.sommet]);} void empiler(char x) {p.sommet++; p.cle[p.sommet]=x;} void depiler() {assert(!pile_vide()); (p.sommet)--;} test.c #include<stdio.h> #include"pile.cpp" unsigned i; void main() {char c; creer_pile(); for(i=0;i<10;i++) {printf("donner c="); scanf("%c",&c); empiler(c);} printf("le dernier caractere est=%c\n",dernier()); for(i=0;i<10;i++) {printf("%c",dernier()); depiler();} }
-----