Un fichier "structuré" par entrée en C ..
Fermé
M4nd
-
4 mai 2010 à 17:54
0beron Messages postés 76 Date d'inscription dimanche 12 juillet 2009 Statut Membre Dernière intervention 15 février 2011 - 8 mai 2010 à 18:28
0beron Messages postés 76 Date d'inscription dimanche 12 juillet 2009 Statut Membre Dernière intervention 15 février 2011 - 8 mai 2010 à 18:28
A voir également:
- Un fichier "structuré" par entrée en C ..
- Fichier rar - Guide
- Comment ouvrir un fichier epub ? - Guide
- Comment réduire la taille d'un fichier - Guide
- Ouvrir un fichier .bin - Guide
- Fichier host - Guide
3 réponses
0beron
Messages postés
76
Date d'inscription
dimanche 12 juillet 2009
Statut
Membre
Dernière intervention
15 février 2011
56
6 mai 2010 à 18:05
6 mai 2010 à 18:05
Bonjour,
Si j'ai bien compris, ton but c'est de faire une liste de personne en stockant certains caractéristiques. Le problème vient de la structure ou de la récuperation d'information à partir du fichier txt?
Pour la structure je te propose ceci:
typedef struct cellule{
char nom[20];
char prenom[20];
char date[20];
struct cellule *suivant;
} *Liste;
Je n'ai pas bien compris pourquoi tu voulais faire une structure à l'intérieur de l'autre puisque ca te fait stocker plusieurs fois les mêmes informations (par exemple le nom).
Ensuite tu peux créer une liste en faisant pointer chaque structure liste sur la suivante.
Si j'ai bien compris, ton but c'est de faire une liste de personne en stockant certains caractéristiques. Le problème vient de la structure ou de la récuperation d'information à partir du fichier txt?
Pour la structure je te propose ceci:
typedef struct cellule{
char nom[20];
char prenom[20];
char date[20];
struct cellule *suivant;
} *Liste;
Je n'ai pas bien compris pourquoi tu voulais faire une structure à l'intérieur de l'autre puisque ca te fait stocker plusieurs fois les mêmes informations (par exemple le nom).
Ensuite tu peux créer une liste en faisant pointer chaque structure liste sur la suivante.
Bonjour,
Non en fait je veux créer des fichiers avec des structures, pour pouvoir modifier les champs, en ajouter...
Le fichier aurait une forme comme celle-ci
NbrEntrées/0; (ici 2)
1.Eric..................../0Dupond................../01985..................../0
2.Fabien...................../0Berlo................./01986 ................/0
Le problème c'est qu'au lancement de l'application, on ne sait pas si l'utilisateur voudra 3, 4 ou 5 champs dans ses entrées...
Et donc je ne peux créer des struct bien définies types typedef struct cellule{
char nom[20];
char prenom[20];
char date[20];
struct cellule *suivant;
} *Liste;
vu que je ne veux pas seulement créer des fichiers avec des étudiants, mais avec des entrées et des champs non défini avant l'execution...
Une sorte de "structure dynamique" mais je ne vois pas du tout comment faire ça....
Non en fait je veux créer des fichiers avec des structures, pour pouvoir modifier les champs, en ajouter...
Le fichier aurait une forme comme celle-ci
NbrEntrées/0; (ici 2)
1.Eric..................../0Dupond................../01985..................../0
2.Fabien...................../0Berlo................./01986 ................/0
Le problème c'est qu'au lancement de l'application, on ne sait pas si l'utilisateur voudra 3, 4 ou 5 champs dans ses entrées...
Et donc je ne peux créer des struct bien définies types typedef struct cellule{
char nom[20];
char prenom[20];
char date[20];
struct cellule *suivant;
} *Liste;
vu que je ne veux pas seulement créer des fichiers avec des étudiants, mais avec des entrées et des champs non défini avant l'execution...
Une sorte de "structure dynamique" mais je ne vois pas du tout comment faire ça....
0beron
Messages postés
76
Date d'inscription
dimanche 12 juillet 2009
Statut
Membre
Dernière intervention
15 février 2011
56
8 mai 2010 à 18:28
8 mai 2010 à 18:28
Ok je vois le truc.
En fait il te faudrait plutôt un tableau de structure dans ce cas.
Un truc du type :
Champs tab[taille];
typedef struct champs{
char information[20];
struct champ *suivant;
} Champs;
De cette façon tu as une personne par ligne de tableau, qui pointe vers un nombre indéterminé d'informations. Par exemple le premier élément contiendrait le nom, le deuxième élément le prénom etc ...
Et quand tu changes de ligne de tableau tu changes de personne, et pour connaitre le nombre de personne tu parcours ton fichier et ca correspond au nombre de ligne.
En fait il te faudrait plutôt un tableau de structure dans ce cas.
Un truc du type :
Champs tab[taille];
typedef struct champs{
char information[20];
struct champ *suivant;
} Champs;
De cette façon tu as une personne par ligne de tableau, qui pointe vers un nombre indéterminé d'informations. Par exemple le premier élément contiendrait le nom, le deuxième élément le prénom etc ...
Et quand tu changes de ligne de tableau tu changes de personne, et pour connaitre le nombre de personne tu parcours ton fichier et ca correspond au nombre de ligne.