Bon me semble que pas que y'ait de topic programmation donc j'en crée un.
Alors je commence, j'ai un programme tout bête en langage C mais j'ai une erreur incompréhensible :
Je crée des structures de type liste chainée et j'essaye de créer deux variables de ce type.
J'alloue et je mets à NULL, pour la première, tout se passe bien, normal.
Pareil pour la deuxième mais ça plante quand je mets son champ successeur (ici next) à NULL.
Quand je lance le mode débug de codeblocks pour voir l'erreur tout marche parfaitement (avec tout le reste de mon code...).
Je comprends pas pourquoi ça marche pas c'est un truc de dingue.
Si vous pouviez l'exécuter chez vous et me dire si ça marche (pas de message d'erreur) ça serait cool.
Voilà le code (c'est du C):
Code:#include <stdio.h> #include <stdlib.h> // STRUCTURES typedef struct cell_chaine{ int e; struct cell_chaine* next; } cell_chaine; typedef cell_chaine* chaine; typedef struct cell_transition{ chaine ch; struct cell_transition* next; } cell_transition; typedef cell_transition* tr; typedef struct cell_etat{ int e; int s; chaine nom; tr transition; struct cell_etat* next; } cell_etat; typedef cell_etat* etat; //MAIN int main(){ etat a; etat b; a=malloc(sizeof(etat)); a->s=0; a->e=1; a->nom=NULL; a->transition=NULL; a->next=NULL; b=malloc(sizeof(etat)); b->s=0; b->e=1; b->nom=NULL; b->transition=NULL; b->next=NULL; // !!!!!!!!! Plantage sur cette ligne, si je la vire ça marche. return 0; }