Vérité avec DEVC++ erreur avec CodeBlocks
Bonjour:le même source fonctionne parfaitement bien avec DEVC++ et fait des erreurs de compilation avec CodeBlocks
Voici la séquence incriminée et les erreurs détectées avec CodeBlocks
..............Merci d'avance ....................
Code:
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
|
{
char *nom;
char *prenom;
T_LIST notes;
} ETUD, *P_ETUD;
struct node
{
struct node *queue;
void *label;
};
int is_empty(T_LIST l)
{
return (l==NULL);
}
T_LIST nil()
{
return NULL;
}
void do_list(void (*p)(), T_LIST l)
{
if( is_empty(l) )
{
return;
}
else
{
(*p)(l -> label); /*** ligne 46***/
do_list(p, l -> queue);
}
}
void imp_note (float *une_note)
{
printf (" %.2f " , *une_note) ;
} ;
void imp_etudiant(P_ETUD un_etud)
{
if (un_etud != NULL)
{
printf (" %s ", un_etud->nom) ;
printf (" %s ", un_etud->prenom) ;
printf (" notes= ");
do_list (imp_note, un_etud->notes) ; /*** ligne 59 **/
printf(" \n ") ;
}
}
void afficher_etudiant (T_LIST ancre)
{
if (is_empty (ancre))
printf(" afficher : liste vide \n ") ;
else
do_list (imp_etudiant,ancre) ; /**** ligne 65 ****/
} |
voici les erreurs détectées
Citation:
In function 'void do_list(void (*) (), node*';
46 error: too many arguments to function
In function 'void imp_etudiant(etudiant*)';
59 error invalid conversion from 'void(*)(float*)' to 'void(*)()'
59 error initializing argument l of 'void do_list(void(*)(),node*)
in function 'void afficher_etudiant(node*)';
65 error: invalid conversion from 'void(*)(etudiant*) to 'void(*)()'