[debutant] erreur de segmentation
Bonjour,
je suis débutante en c et j'ai un problème lors de l'éxécution de mon programme : cela m'affiche erreur de segmentation. J'ai essayé de chercher d'où cela pouvait venir, j'ai trouvé la ligne mais je ne vois pas comment régler le problème. s'il vous plaît aidez-moi!!
(je précise que mon programme permet d'afficher les données qui correspondant à un nom dans un fichier répertoire)
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
|
struct ligne
{
char *champ[8];
}
struct ligne ligne;
void
initialisation_struct( )
{
size_t cpt=1;
char c;
int i=0;
while((c=getchar( ) ) ! = '\n')
{
if ( c == '\t')
{
i=0;
cpt ++;
}
else
{
ligne.champ[cpt][i]=c; /* c'est cette ligne qui pose problème*/
i++;
}
}
}
void
affichernom( char *nom)
{
initialisation_struct();
while ( ! strcoll (nom, ligne.champ[1])
initialisation_struct();
printf("%s %s %s %s %s %s %s %s\n", nom, ligne.champ[2], ligne.champ[3], ligne.champ[4], ligne.champ[5], ligne.champ[6], ligne.champ[7], ligne.champ[8]);
} |
Je sais que dans mon code il y a des erreurs ce n'est qu'une première version.... soyez indulgent s'il vous plaît.
Merci d'avance