structures recursives et pointeurs!
Bonjour tout le monde,
Je suis des cours de C à la fac, que j'ai déjà eu dans mes années antérieures, et du coup en cours je m'amuse à me faire une toute petite bibliothèque des listes l'histoire que je me rappelle des principes fondamentaux du C.
Vu que je sais que je n'arriverais pas verbalement à expliciter mon problème je vous donnes les parties de sources qui me posent problèmes.
Tout d'abord voici comment je définis mes structures :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
typedef int coeff;
typedef struct entite
{
struct entite *prec;
struct entite *succ;
coeff valeur;
} entite;
typedef struct liste
{
entite *premier;
entite *dernier;
unsigned short taille;
} liste; |
Et maintenant dans une de mes fonctions lorsque j'execute mon programme ( car oui il compile avec gcc -W -Wall -pedantic -ansi ), j'ai une erreur de segmentation à cette ligne ci du code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
liste *l;
entite *ajout;
if((ajout = (entite*) malloc(sizeof(entite))) == NULL)
{
printf("Erreur : allocation memoire impossible.\n");
}
/*Aucun message d'erreur n'apparait*/
(l->premier)->prec = ajout; /*c'est cette ligne qui me fait mon erreur de segmentation*/ |
merci d'avance de vos suggestions de débogages. Car personnelement je ne vois pas où cherchais mon information de debogage mis à part à demander à une population d'expert ;-)