Bonjour à tous,

j'utilise des liste chainées pour faire un automate, et je reçois une erreur de segmentation je ne comprends pas du tout pourquoi! Je vous montre ma structure :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
struct assoc{
	char lettre;
	int state;
	struct assoc* suiv;
};
typedef struct assoc* association;
Donc voilà c'est juste une structure composé d'un entier, d'un char et d'un pointeur sur le prochain élément, rien de bien méchant. ET lors de cette fonction je reçois une erreur de segmentation (les printf sont juste pour expliquer mon problème) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
int est_avant(char c, association a) {
	printf("NULL ? %d\n",(a==NULL));
	printf("CARAC : %d\n",a->lettre);
	return (c < a->lettre);
}
le premier printf me renvoi 0, ce qui veut dire que a n'est pas NULL, et lorsque je veux accéder à a->lettre je reçois aussitôt une erreur de segmentation, je ne comprend pas pourquoi puisque a n'est pas NULL, et que a->lettre ne peut pas être NULL puisque c'est un char.

Si quelqu'un a une idée de pourquoi je suis preneur !
merci d'avance !
cordialement