Bonjour,
j'ai une "erreur de segmentation" au niveau de realloc, et j arrive pas à la resoudre.
Alors bienvenue à toute proposition, et merci d'avance.

je travail sur un tableau dynamique de type suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
typedef struct livre {
  char* titre;
  char* auteur;
  int num;
}s_livre;
Voici le code source :
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
s_livre* recherche_auteur(s_livre* tab, char* auteur)
{
 
  s_livre *livre;
  int i=0, cpt = 0;
 
  while(tab+i)
    {
      if(strcmp(tab[i].auteur, auteur) == 0)
        {
          livre = realloc(livre, sizeof(s_livre)*(cpt+1));
          livre[cpt].num = tab[i].num;
          livre[cpt].auteur = tab[i].auteur;
          livre[cpt].titre = tab[i].titre;
          cpt++;
        }
      i++;
    }
  return livre;
}