[C] Comment ca marche un systeme de listes et pointeurs?

Comment ca marche un systeme de listes et pointeurs? [C] - C++ - Programmation

Marsh Posté le 25-04-2002 à 16:40:56    

en fait je dois faire un systeme de listes et pointeurs, donc un fichier de 1000 fiches max, avec dans chaque fiche l'adresse de la fiche suivante etc... mais je sais pas si je dois faire ca avec des FILE *p dans chaque fiche ou alors le numero de la place de la fiche en question...
 
kk1 peut me mettre sur la voie? merci


---------------
SHOOT ME AGAIN WEBZINE
Reply

Marsh Posté le 25-04-2002 à 16:40:56   

Reply

Marsh Posté le 25-04-2002 à 17:15:44    

FILE * p = Pointeur vers un descripteur de fichier.
Donc si tu n'as qu'un fichier tu n'as qu'un FILE *.
Pour tes fiches faut plutôt voir du côté des listes chaînées.
Pour les lire/écrire dans le fichier c'est une autre histoire, à voir après avoir défini et fait fonctionner la liste en mémoire.

 

[jfdsdjhfuetppo]--Message édité par antp le 25-04-2002 à 17:15:51--[/jfdsdjhfuetppo]


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 25-04-2002 à 19:11:35    

normalement, une fiche = une structure en C
tu stocke toutes tes fiches dans un seul fichier
 
y'a un ou de truc bizarres dans tes dires ...
"des FILE *p dans chaque fiche" : un FILE * ne peut etre contenu dans un fichier, ainsi qu'un pointeur. Ainsi, ta structure ne doit pas avoir de champ de ce type. Ce type de donnee n'a en effet une signification que lors d'une unique execution de ton programme. Une fois celui-ci termine, ces valeurs ne designent plus rien.
Il faut donc stocker l'emplacement dans le fichier de la fiche.
Tu peux donc soit faire ca en designant un numero de fiche (10° fiche) ou un numero d'octet (fiche commence a l'octet 1000 du fichier)
je pense que le plus simple est la premiere solution, la seconde etant plutot reservee a des fiches de taille variable ...


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
Reply

Marsh Posté le 25-04-2002 à 20:43:25    

ok merci beaucoup a vous 2 :jap:


---------------
SHOOT ME AGAIN WEBZINE
Reply

Marsh Posté le 25-04-2002 à 20:53:16    

En gros, tu cree tes fiches en memoire, en utilisant des structures/listes chainees. Il te faut une taille de structure fixe. Tu write tes fiches dans ton fichier en binaire.
ensuite, tu relis ton fichier, en faisant des read de la taille defini, et tu recharges chaque fiches en memoires.
Write, Read, lseek....

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed