Saisir le contenu d un fichier texte dans une liste chainee
yedez
Messages postés
69
Date d'inscription
Statut
Membre
Dernière intervention
-
fiddy Messages postés 11069 Date d'inscription Statut Contributeur Dernière intervention -
fiddy Messages postés 11069 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
On souhaite charger le contenu d'un fichier texte dans une liste en double chainage (chainage avant et chainage arrière) et effectuer des traitements sur la liste.
La structure de la liste est la suivante :
Struct liste
{
DATA d ;
Struct liste *next ;
Struct liste *prev;
};
Typedef struct liste LISTE;
Le type DATA contient deux champs :
* une chaine de caractère qui contiendra le contenu d'une ligne du fichier texte.
* Le numéro de la ligne du fichier.
Struct data
{
char *s ;
int ligne;
} ;
Typedef struct data DATA ;
On vous demande d'écrire un programme qui permet de charger le contenu d'un fichier texte dans une liste en double chainage
voila mon code de cette fct void charger_liste(LISTE **first,FILE *f)
{
int l=0;
char k[100],code[20];LISTE *p;
f=fopen("f.txt","r+")
while (fgets(k,100,f))
{
sscanf(k,%(strlen(k))s,code);
p=(LISTE*) malloc (sizeof(LISTE));
(p->d).ligne=l++;
strcpy((p->d).s,code);
fseek(f,strlen(k),SEEK_SET);
p->next=*first;
*first=p;
}
le compilateur s arrete au niveau de sscanf (moi meme je sais que c est faux mais j ai pas su comment peut je remplir la liste ligne par ligne ) aidez moi s il vous plait :)
On souhaite charger le contenu d'un fichier texte dans une liste en double chainage (chainage avant et chainage arrière) et effectuer des traitements sur la liste.
La structure de la liste est la suivante :
Struct liste
{
DATA d ;
Struct liste *next ;
Struct liste *prev;
};
Typedef struct liste LISTE;
Le type DATA contient deux champs :
* une chaine de caractère qui contiendra le contenu d'une ligne du fichier texte.
* Le numéro de la ligne du fichier.
Struct data
{
char *s ;
int ligne;
} ;
Typedef struct data DATA ;
On vous demande d'écrire un programme qui permet de charger le contenu d'un fichier texte dans une liste en double chainage
voila mon code de cette fct void charger_liste(LISTE **first,FILE *f)
{
int l=0;
char k[100],code[20];LISTE *p;
f=fopen("f.txt","r+")
while (fgets(k,100,f))
{
sscanf(k,%(strlen(k))s,code);
p=(LISTE*) malloc (sizeof(LISTE));
(p->d).ligne=l++;
strcpy((p->d).s,code);
fseek(f,strlen(k),SEEK_SET);
p->next=*first;
*first=p;
}
le compilateur s arrete au niveau de sscanf (moi meme je sais que c est faux mais j ai pas su comment peut je remplir la liste ligne par ligne ) aidez moi s il vous plait :)
A voir également:
- Saisir le contenu d un fichier texte dans une liste chainee
- Fichier bin - Guide
- Liste déroulante excel - Guide
- Comment réduire la taille d'un fichier - Guide
- Comment ouvrir un fichier epub ? - Guide
- Comment saisir une adresse url - Guide
4 réponses
sscanf(k,%(strlen(k))s,code);
Pas besoin de rajouter strlen(k) ici. Mets simplement sscanf(k,"%s",code);
Pas besoin de rajouter strlen(k) ici. Mets simplement sscanf(k,"%s",code);
L'idée d'un forum, c'est de s'entraider, et non de faire le travail des autres. Je te conseille de voir du côté du Site du zéro.