Liste chainée en c

Fermé
youssef - 7 avril 2012 à 11:07
Hxyp Messages postés 401 Date d'inscription vendredi 28 janvier 2011 Statut Membre Dernière intervention 27 avril 2014 - 7 avril 2012 à 23:21
Bonjour,



comment saisir une chaine de caractére de taille ilimité ( sans avoir un nmax) avec liste chainée

svp aider moi :'( je suis un debutant

merci d'avance

1 réponse

Hxyp Messages postés 401 Date d'inscription vendredi 28 janvier 2011 Statut Membre Dernière intervention 27 avril 2014 54
7 avril 2012 à 23:21
Bonjour,

Pouvez utiliser un simple char *buff; commencer par l'alloué à une certaine taille et si l'ajout de caractères continu faites un realloc de buff pour l'élargir d'avantage ainsi de suite.

Vous ne dites pas en quoi consiste l'utilisation d'une liste chaînée dans ce problème. Car si c'est pour ne mettre qu'un char par item ça ne sert strictement à rien.. Par contre vous pouvez utiliser la méthode unrolled linked list tenez l'article sur wikipedia : https://en.wikipedia.org/wiki/Unrolled_linked_list
C'est à peut près le même principe que la reallocation d'un tableau de char mais au lieu de realloc on alloue tout simplement un autre tableau de la même taille qu'on remplie et quand il est plein on refait la même.. les tableaux étant liés c'est une liste chaînée mais plus efficace vu qu'on n'utilise pas 1 char par 'item' mais un tableau. Enfin ça c'est si j'ai bien compris la question évidemment.. L'article sur le wiki parle de lui-même.
0