Bon, je me lance, à mon avis ca vient d'un fait tout simple (mais néanmoins problématique) :
ta fonction "mafonction()" n'est pas :
void maFonction(GtkWidget *widget, MaZolieStructure *b) ;
mais
void maFonction(GtkWidget *widget, gpointer b) ;
_grosse_ nuance !
Comme elle ne sais pas à priori comment utiliser b, il faut en préciser le type
deux solutions à chaud :
void maFonction(GtkWidget *widget, gpointer b)
{
printf("%d\n", (MaZolieStructure*)b->a);
}
# Re: Programmation C et GTK+
Posté par QuYuan . En réponse au journal Programmation C et GTK+. Évalué à 3.
ta fonction "mafonction()" n'est pas :
void maFonction(GtkWidget *widget, MaZolieStructure *b) ;
mais
void maFonction(GtkWidget *widget, gpointer b) ;
_grosse_ nuance !
Comme elle ne sais pas à priori comment utiliser b, il faut en préciser le type
deux solutions à chaud :
void maFonction(GtkWidget *widget, gpointer b)
{
printf("%d\n", (MaZolieStructure*)b->a);
}
ou
void maFonction(GtkWidget *widget, gpointerb)
{
MaZolieStructure *mzs = (MaZolieStructure *)b;
printf("%d\n", mzs->a);
}
voilà ca devrait marcher.
ai-je été clair ?