cs_halima
Messages postés8Date d'inscriptionjeudi 10 juin 2004StatutMembreDernière intervention24 mai 2007
-
4 mai 2007 à 00:43
cs_halima
Messages postés8Date d'inscriptionjeudi 10 juin 2004StatutMembreDernière intervention24 mai 2007
-
8 mai 2007 à 22:14
Au secours!!!
Slt j'aimerai creer un fichier (de mot) mais en allouant dynamiquement la la taille (avec malloc et realloc). un mot a au plus 100 caracteres, et l'affichage dois se faire par ordre alphabetique (avec qsort).Mon programme dois etre capable de prendre n'importe quel fichier en entree et afficher le contenu par ordre alphabetique.
Comment dois je faire???
emmatopiak
Messages postés149Date d'inscriptionmercredi 28 mars 2007StatutMembreDernière intervention17 mai 20072 4 mai 2007 à 21:37
Salut,
Donc tu veux faire un tableau de mots, mais tu ne connais pas à l'avance le nombre de mots. La méthode la meilleure pour ça c'est la suivante :
- Tu commences avec un tableau ayant une capacité de x mots (x=10 ou plus, à toi de voir). Ca veut pas dire que le tableau contient x mots, ça veut dire qu'il peut en contenir au plus que x.
- dès que tu cherches à entrer un mot et que le tableau est plein (disons le (x+1)-ème mot), tu doubles la capacité du tableau, en faisant ton realloc donc. Ca va te garantir que tu passes pas ton temps à faire des realloc.
Pour te faciliter la vie, alloue 100 octets pour chaque mot. Ca te permettra de calculer facilement combien d'octets un tableau de x mots occupe.
cs_halima
Messages postés8Date d'inscriptionjeudi 10 juin 2004StatutMembreDernière intervention24 mai 2007 5 mai 2007 à 22:08
ok c exactement mon probleme mais je ne comprend pas bien le fonctionnement de realloc parceuqe ce que je fais ne marche pas.j'aimerai aussi utiliser qsort pour trier ce tableau et l'afficher peut tu m'aiclaircir un peu avec un example.
char *tab[] est ma definition du tableau. Au depart 100 mots et 1mot a au plus 100 caracteres.
Vous n’avez pas trouvé la réponse que vous recherchez ?