Bonjour a tous; j'ai fait un tour sur l'excellent site cppfrance.com, pour voir s'il y avait qquechose d'interessant et je suis tombe sur un editeur de texte en mode console et je me suis dit bha tiens ca pourrait etre interessant d'etudier ça...
Alors je commence trankilou et là c le drame....
/**************************************************************/ /****************** definition de la structure ****************/ /**************************************************************/ typedefstruct texte { char *ligne; struct texte *precedent; struct texte *suivant; }texte;
typedef texte *ptr_texte;
avais vous deja vu une definition de structure pareil ??
si oui par pitié expliquez moi ce qu'il fait pk je suis vraimment largue ...
C'est ce qu'on appelle une liste chainée, ça permet de "lier" plusieurs variables en prenant de la place dans la mémoire sans que ce soit en un seul bloc. Comme vous le savez, un tableau doit prendre de la place en un seul bloc.
Imaginez que vous voulez faire un texte de 500m de caractère, il faudrait trouver dans la mémoire une grande quantité de place en un bloc...
Une liste chainée sert justement à ça, on prend une petite place, et on enregistrer l'adresse de la suite du texte, etc.
(Si je me trompe, corrigez moi, mais il me semble que c'est ça... :p)
Oui voilà c'est une liste chaînée.
C'est comme un tableau, sauf que ce n'est pas un espace continu en mémoire. Chaque ligne est stockée dans une variable, et y'a un pointeur vers la ligne suivante ou la ligne précédente (qui elle-même contient un char* ligne ainsi qu'un pointeur vers la ligne précédente et la ligne suivante).
Bonjour a tous; j'ai fait un tour sur l'excellent site cppfrance.com,
Ahem...
Citation : C3po23
pour voir s'il y avait qquechose d'interessant et je suis tombe sur un editeur de texte en mode console et je me suis dit bha tiens ca pourrait etre interessant d'etudier ça...
avais vous deja vu une definition de structure pareil ??
si oui par pitié expliquez moi ce qu'il fait pk je suis vraimment largue ...
C'est une utilisation du C assez avancée qui met en oeuvre les structures récursives, le listes chainées. Si tu ne connais pas, je te conseille d'attendre la fin de ta formation en C, parce que ce ne sont pas des concepts accessibles à un débutant absolu.
Tu peux néanmoins lire de la documentation générale sur les algorithmes et les structures de données, ça fait partie de la formation de base de l'informaticien (indépendamment du langage de programmation), et ça te permettra d'appréhender ce genre de code plus facilement ...
Mais j'ai pas encore compris ce que serai la logique du code avec cette structure. Pour etre plus precis comment l'employer une telle structure sans causer trop de degat a mon code ...
pour -ed-:
* cppfrance.com est le seul cite que j'ai trouve qui reference des sources qui fonctionnent (relativemment) permettant ainsi leur etude ..
* je ne me considere pas comme un debutant absolu mais comme un debutant tout court ;-) ( 6 mois de formation deja ...)
* et pour finir aurais tu des tutos sur ces algo a me conseiller ?? ca m'interesse beaucoup
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
If you'd like to join us, read "How do we work at OpenClassrooms"! :)