1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
|
void unefonction()
{
/* Le sommet de la pile d'opérateur (qui ne pointe sur rien au départ)*/
PileOperateur *SommetOp=NULL;
/* Le sommet de la pile de valeurs (qui ne pointe sur rien au départ)*/
PileValeur* SommetVal=NULL;
/* des pointeurs temporaires (pour la vérification) */
PileOperateur *TempoOp;
PileValeur *TempoVal;
/* un double pour les valeurs */
double valeur;
/* et un caractère pour les operateurs */
char op;
/* ajout d'un opérateur à la pile d'opérateurs, avec vérification intégrée*/
if((TempoOp=EmpileOperateur(op,SommetOp))!=SommetOp)
{
/* ici, ca a marché... le nouveau sommet officiel de la pile d'opérateurs
* est le sommet qu'on vient de récupérer */
SommetOp=TempoOp;
}
else
{
/* ici, ca a "foiré" */
}
/* ajout d'une valeur à la pile de valeurs, avec vérification intégrée */
if((TempoVal=EmpileValeur(valeur,SommetVal))!=SommeVal)
{
/* ici, ca a marché... le nouveau sommet officiel de la pile de valeurs
* est celui qu'on vient de récupérer*/
SommetVal=TempoVal;
}
else
{
/* ici, ca a "foiré" */
}
/* pour le dépilage, il faudra passer respectivement l'adresse de op et
* l'adresse de Valeur, mais le principe sera sensiblement le meme:*/
/* Récupération de l'opérateur qui se trouve au sommet de la pile avec
* vérification intégrée */
if((TempoOp=DepileOperateur(&op,SommetOp))!=SommetOp)
{
/* ici, ca a marché, et op a recu la valeur de l'ancien sommet de la pile
* des opérateurs... il faut juste voir ce qu'on en fait... sans oublier
* de changer le sommet officiel de notre pile ;) */
}
else
{
/* ici, ca a "foiré"... */
}
/* Récupération de la vaeur qui se trouve au sommet de la pile avec
* vérification intégrée */
if((TempoVal=DepileValeur(&valeur,SommetVal))!=SommetValeur)
{
/* ici, ca a marché, et valeur a recu la valeur de l'ancien sommet de la
* pile des valeurs... il faut juste voir ce qu'on en fait... sans
* oublier de changer le sommet officiel de notre pile ;) */
}
else
{
/* ici, ca a "foiré"... */
}
} |
Partager