Le but est de lire le fichier ligne par ligne et de les insérer dans une liste.

Le code de la structure :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
struct element
  {
    char *val; //lettre alphabet ou chiffre
    char *morse; //équivalent morse
    struct element *suiv;
  } ;
  typedef struct element ELEMENT;
  typedef struct element * Listes;

fonction


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
21
22
23
24
25
26
27
28
29
Listes creerListe()
  {
    char ligne[20]; //tableau tampon ligne
    char * Caract;
    char * Morse;
    char * l;
    FILE * fichier;
    Listes q, p=NULL;
 
    fichier = fopen("liste_conversion.txt","r"); //ouverture du fichier en lecture 
 
    }
    while (l!= NULL)
    {
	l=fgets(ligne,20,fichier);
	Caract = strtok (ligne, "=");
	Morse = strtok(NULL,"=");
	q=(Listes) malloc(sizeof(ELEMENT));
	q->val=Caract; 
	q->morse=Morse;
	q->suiv=p;
	p=q;
	return p;	
 
    }
 
    printf("%s%s\n",p->val, p->morse);
 
  }

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
void afficher(Listes L)
  {
    Listes p= L;
    while (p!=NULL)
    {
       printf("%s%s\n",p->val,p->morse);
       p=p->suiv;	 
    }
  }
Je n'arrive pas à savoir si la liste s'est créer puisque la fonction afficher ne fonctionne pas et je ne vois pas d'ou viens le problème.