4 réponses
info_Louka
Messages postés
64
Date d'inscription
mardi 25 janvier 2011
Statut
Membre
Dernière intervention
16 mars 2013
27 janv. 2011 à 00:36
27 janv. 2011 à 00:36
on déclare le pointeur par struct element parce il pointe sur un élément de type struct element qui va contenir aussi
int val;
struct element *nxt;
int val;
struct element *nxt;
info_Louka
Messages postés
64
Date d'inscription
mardi 25 janvier 2011
Statut
Membre
Dernière intervention
16 mars 2013
27 janv. 2011 à 02:21
27 janv. 2011 à 02:21
typedef element* llist; revient à dire qu'en déclarant une variable de type element revient à declarer une variable de type llist
d'aprè le code (typedef struct element *element; typedef element* llist; ) donne que les 3 types llist, element et struct element sont équivalent et donc
llist ma_liste1 = NULL;
element *ma_liste2 = NULL;
et struct element *ma_liste3 = NULL;
représentent la même chose
d'aprè le code (typedef struct element *element; typedef element* llist; ) donne que les 3 types llist, element et struct element sont équivalent et donc
llist ma_liste1 = NULL;
element *ma_liste2 = NULL;
et struct element *ma_liste3 = NULL;
représentent la même chose
info_Louka
Messages postés
64
Date d'inscription
mardi 25 janvier 2011
Statut
Membre
Dernière intervention
16 mars 2013
27 janv. 2011 à 03:15
27 janv. 2011 à 03:15
et bien sur le meme nom de variable pas list1 et lis2
info_Louka
Messages postés
64
Date d'inscription
mardi 25 janvier 2011
Statut
Membre
Dernière intervention
16 mars 2013
27 janv. 2011 à 03:45
27 janv. 2011 à 03:45
de rien bnuit :)
info_Louka
Messages postés
64
Date d'inscription
mardi 25 janvier 2011
Statut
Membre
Dernière intervention
16 mars 2013
27 janv. 2011 à 02:27
27 janv. 2011 à 02:27
j'espère ke ca t'a aidé :))
Hello , c'est encore moi
merci info_Louka grâce a toi j'ai presque tout compris , mais là j'ai encore un soucis , je n'arrive pas a afficher les valeur de la liste chainée (dernière boucle) .
Merci encore .
#include <stdlib.h>
#include <stdio.h>
typedef struct element element;
struct element
{
int val;
struct element *nxt; // *nxt pointe sur la structure suivante (qui contient aussi int val et *nxt
};
int main(int argc, char **argv)
{
element *Nouveau; //*Nouveau pointe sur un nouveau element quand on va le créer
element *Courant; //*Courant pointe sur un element en cours (pour parcourir la liste chainée par ex)
element *Tete; // *Tete pointe sur le premier element (pour savoir a quel adresse commence la liste chainée)
Tete = NULL;
Nouveau = (element*)malloc(sizeof(struct element)); //on créer le 1er element de la liste chainée
Nouveau->nxt = Tete; //l'adresse du prochain element est null car il y en a pas encore
Nouveau->val = 5 ;
Tete = Nouveau ;//on met l'adresse du 1ere element dans le pointeur Tete
Courant = Tete ; //on se placeau début de liste
while(Courant->nxt != NULL) //on parcourt la liste jusqu'au dernier element
{
Courant = Courant->nxt; //on recupere l'adresse du dernier element a la fin de la boucle
}
Nouveau = (element*)malloc(sizeof(struct element));
Courant->nxt = Nouveau; //on met l'adresse du nouveau element dans le dernier element en cours
Nouveau->val = 10;
Nouveau->nxt = NULL; //on met NULL pour le nouveau element ( qui est maintenant le dernier)
Courant = Tete ; // on se place au debut de liste
while(Courant->nxt != NULL)
{
printf("%d",Courant->val);
Courant = Courant->nxt;
}
return 0;
}
merci info_Louka grâce a toi j'ai presque tout compris , mais là j'ai encore un soucis , je n'arrive pas a afficher les valeur de la liste chainée (dernière boucle) .
Merci encore .
#include <stdlib.h>
#include <stdio.h>
typedef struct element element;
struct element
{
int val;
struct element *nxt; // *nxt pointe sur la structure suivante (qui contient aussi int val et *nxt
};
int main(int argc, char **argv)
{
element *Nouveau; //*Nouveau pointe sur un nouveau element quand on va le créer
element *Courant; //*Courant pointe sur un element en cours (pour parcourir la liste chainée par ex)
element *Tete; // *Tete pointe sur le premier element (pour savoir a quel adresse commence la liste chainée)
Tete = NULL;
Nouveau = (element*)malloc(sizeof(struct element)); //on créer le 1er element de la liste chainée
Nouveau->nxt = Tete; //l'adresse du prochain element est null car il y en a pas encore
Nouveau->val = 5 ;
Tete = Nouveau ;//on met l'adresse du 1ere element dans le pointeur Tete
Courant = Tete ; //on se placeau début de liste
while(Courant->nxt != NULL) //on parcourt la liste jusqu'au dernier element
{
Courant = Courant->nxt; //on recupere l'adresse du dernier element a la fin de la boucle
}
Nouveau = (element*)malloc(sizeof(struct element));
Courant->nxt = Nouveau; //on met l'adresse du nouveau element dans le dernier element en cours
Nouveau->val = 10;
Nouveau->nxt = NULL; //on met NULL pour le nouveau element ( qui est maintenant le dernier)
Courant = Tete ; // on se place au debut de liste
while(Courant->nxt != NULL)
{
printf("%d",Courant->val);
Courant = Courant->nxt;
}
return 0;
}
27 janv. 2011 à 00:58
et pour
typedef element* llist; , pourrias-tu expliquer avec tes mots ce que ça fait , et j'ai une question un
peu hs , est-ce que
typedef element * llist , typedef element *llist , typedef element* llist veut dire la meme chose ?
merci bien