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 : 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
 
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 ;-)