Bonjour,
J'ai besoin d'une petite explication, pourquoi ma structure (Automate) n'est pas préservé lors du passage par le void *
Je m'y suis sûrement mal prit mais je n'arrive pas a déboguer.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 typedef struct data { bool res; const Automate* aut; }Data; void transition_automate_aux(int origine, char lettre, int fin, void* data) { Data* d = (Data*) data; print_automate(d->aut); /* CRASH ERREUR SEGMENTATION */ } bool meme_langage (const char *expr1, const char* expr2) { Data * data = malloc(sizeof(Data)); data->aut = malloc(sizeof(Automate)); bool res; Automate * aut1 = creer_automate(xxx); data->aut = aut2; print_automate(data->aut); /* CRASH PAS */ pour_toute_transition(aut1, transition_automate_aux, &data); return res; }
Partager