Petit problème avec une File d'entier
Résolu
Akyro
-
[Dal] Messages postés 6122 Date d'inscription Statut Contributeur Dernière intervention -
[Dal] Messages postés 6122 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
J'ai du faire une petite erreur. Je doit faire une fonction primitive pour enfiler ma pile, ce qui va permettre de rajouter un élément à l'intérieur. Mon problème arrive lorsque que j'utilise mon else.
int enfiler(File *pf,int elt){
Maillon * tmp;
tmp=(Maillon*)malloc(sizeof(Maillon));
if(tmp == NULL){
return 1;
}
tmp->val=elt;
if(estFileVide(pf)){
tmp->suiv=tmp;
}
else{
tmp=(*pf)->suiv;
(*pf)->suiv=tmp->suiv;
}
return 0;
}
J'ai du faire une petite erreur. Je doit faire une fonction primitive pour enfiler ma pile, ce qui va permettre de rajouter un élément à l'intérieur. Mon problème arrive lorsque que j'utilise mon else.
int enfiler(File *pf,int elt){
Maillon * tmp;
tmp=(Maillon*)malloc(sizeof(Maillon));
if(tmp == NULL){
return 1;
}
tmp->val=elt;
if(estFileVide(pf)){
tmp->suiv=tmp;
}
else{
tmp=(*pf)->suiv;
(*pf)->suiv=tmp->suiv;
}
- pf=tmp;
return 0;
}
3 réponses
-
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention Ambassadeur 1 588
bonjour,
je me demande si il n'y a pas une confusion entre le type Maillon et le type File.
la déclaration de ces types est-elle secrète? -
/**
- \struct Maillon
- \brief Maillon contenant une valeur et l'addresse d'un maillon suivant.
- /
typedef struct mail
{
int val;
struct mail * suiv;
}Maillon;
typedef Maillon * File;
Je vous transmet la structure de ma file-
-
- @yg_be :
Je pense qu'il a écrit*pf=tmp;
et paspf=tmp;
.
Comme il n'a pas posté son code avec les balises de code du forum, l'étoile en début de ligne a été transformée en bullet-point html par le forum.
Il faudrait qu'Akyro poste son code correctement.
@Akyro : utilise le bouton de l'éditeur du forum pour poster le code entre balises appropriées au langage C.
Si tu ne sais pas comment faire, suit ces indications : https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
-
Excuser moi l'erreur venais simplement de ma fonction estFileVide qui devait être mal ecrit merci quand même pour votre aide.