une Base Solide en Programmation
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
une Base Solide en Programmation

C++/Java/Delphi/Assembleur
 
AccueilPortailRechercherDernières imagesS'enregistrerConnexion
Le deal à ne pas rater :
TCL C74 Series 55C743 – TV 55” 4K QLED 144 Hz Google TV (Via ODR ...
499 €
Voir le deal

 

 les listes chainés en C

Aller en bas 
3 participants
AuteurMessage
Admin
Administrateur
Administrateur
Admin


Masculin
Nombre de messages : 232
Age : 36
Localisation : A COTé 2MON PC
Loisirs : KUNG FU
Date d'inscription : 05/03/2007

les listes chainés en C Empty
MessageSujet: les listes chainés en C   les listes chainés en C Icon_minitimeDim 30 Déc - 0:30

voila un cours tres complets sur les listes chainées et surtout la methode de tri en C
http://chgi.developpez.com/sortlist/
Revenir en haut Aller en bas
http://hbpcclub.forumactif.fr
nadia
soldat
soldat



Féminin
Nombre de messages : 14
Age : 38
Localisation : chlef
Loisirs : informatique
Date d'inscription : 28/03/2007

les listes chainés en C Empty
MessageSujet: Re: les listes chainés en C   les listes chainés en C Icon_minitimeJeu 10 Jan - 22:25

peace be upen you
dans cet exemple :
void Push(pile *p, int Val)
{
pile *element = malloc(sizeof(pile));
if(!element) exit(1);
element->valeur = Val;
element->prec = *p;
*p = element;
}
j ai pas compris l' interet de (if(!element) exit(1); )
que signifie ça
Revenir en haut Aller en bas
Benayada Houari
Administrateur
Administrateur
Benayada Houari


Masculin
Nombre de messages : 89
Age : 37
Localisation : Chlef
Loisirs : Sport
Date d'inscription : 14/03/2007

les listes chainés en C Empty
MessageSujet: Re: les listes chainés en C   les listes chainés en C Icon_minitimeJeu 10 Jan - 22:39

Peace be open you Nadia...
Pour ta question Nadia: certain temp quand on fait l'allocation dynamique par la fonction malloc, le S.E n'accepte pas ça (cad il ne nous donne pas une case mémoire pour l'utiliser), et ça se fait à cause de: peut etre que la mémoire est pleine utlisée, et il y a plus d'un espace libre...
Alors dans cette situation la fonction malloc ne renvoit pas une adresse, mais plutot une NULL , cad la fonction malloc n'a pas réussi en l'allocation d'une espace mémoire (faute de mémoire pleine etc...), et c'est ça prkoi il font le test
Code:

if (!element)
et c'est équivalent à
Code:

if (element==NULL)
cad si la valeur booleen entre les parenthese est fausse, cad si le pointeur contient NULL alors
Code:

exit(-1);
cette instruction fait sortir completement le programme avec une erreur...
c'est pour ça il faut tjrs teste la fonction malloc à chaque fois on l'utilise, pour valider s'il a réussi dans l'allocation ou non...
Revenir en haut Aller en bas
nadia
soldat
soldat



Féminin
Nombre de messages : 14
Age : 38
Localisation : chlef
Loisirs : informatique
Date d'inscription : 28/03/2007

les listes chainés en C Empty
MessageSujet: Re: les listes chainés en C   les listes chainés en C Icon_minitimeJeu 10 Jan - 22:59

Rolling Eyes thanks a lot
mais j ai trouvée aussi une autre expression
int Length(elt*p)
{
int n=0;
while(p) /*le probleme est ici*/
{
n++;
p = p->suiv;
}
return n;
}
dans ce cas normalement en fait
while(p !=NULL)
{
n++;
p = p->prec;
}
return n;
est ce que c'est la meme chose ?
Revenir en haut Aller en bas
Benayada Houari
Administrateur
Administrateur
Benayada Houari


Masculin
Nombre de messages : 89
Age : 37
Localisation : Chlef
Loisirs : Sport
Date d'inscription : 14/03/2007

les listes chainés en C Empty
MessageSujet: Re: les listes chainés en C   les listes chainés en C Icon_minitimeJeu 10 Jan - 23:21

Oui Nadia c'est la meme chose...
On a dit que l'expression
Code:

while ( )
prend entre ses parenthèses une expression booléen, cad le résultat qui doit sortir des parenthèses doit etre booléen(VRAI ou FAUX)... et on sit que que la valeur qui signifie FAUX est uniquement le 0, à part ça, n'importe quelle autre valeur signifie VRAI...  alors tant que la valeur entre parenthèse n'est pas 0, le résultat signifie dans ce cas VRAI et la boucle tourne normal, une fois la valeur entre parenthèse devient 0, le résulltat  est FAUX, et la boucle sort....
Revenir en haut Aller en bas
nadia
soldat
soldat



Féminin
Nombre de messages : 14
Age : 38
Localisation : chlef
Loisirs : informatique
Date d'inscription : 28/03/2007

les listes chainés en C Empty
MessageSujet: Re: les listes chainés en C   les listes chainés en C Icon_minitimeJeu 10 Jan - 23:35

vouz avez dit que une fois la valeur entre parenthèse devient 0, le résulltat est FAUX, et la boucle sort....mais p est un pointeur il prend soit la valeur NULL soit une autre adresse,puisque il se peut que p pointe vers la premiére case de la memoire (si p==0)? et il se peut que p n egale jamais 0 ?
please
Revenir en haut Aller en bas
Benayada Houari
Administrateur
Administrateur
Benayada Houari


Masculin
Nombre de messages : 89
Age : 37
Localisation : Chlef
Loisirs : Sport
Date d'inscription : 14/03/2007

les listes chainés en C Empty
MessageSujet: Re: les listes chainés en C   les listes chainés en C Icon_minitimeJeu 10 Jan - 23:53

Non Nadia...
le cas ce que tu parle, cad le cas ou l'expression booléen donne FAUX ou VRAI est dépend à la nature du type de variable, et dans le type de variable int oui c'est de 0 qui donne la valeur FAUX...( il faut ramarquer que je parle de 0 booléen et pas le 0 numérique)
Mais dans le cas de pointeurs ( les pointeurs sont des variables particulieres)
n'est pas la valeur 0 qui donne FAUX, mais la valeur NULL qui donne le FAUX,...
Alors les pointeurs sont considérées comme une adresse(numéro quelconque et ça contient le 0 numérique) et ça se donne VRAI , ou NULL et ça se donne FAUX
Donc le 0 est une adresse mémoire valide(VRAI), et ce n'est pas FAUX Smile
Revenir en haut Aller en bas
nadia
soldat
soldat



Féminin
Nombre de messages : 14
Age : 38
Localisation : chlef
Loisirs : informatique
Date d'inscription : 28/03/2007

les listes chainés en C Empty
MessageSujet: Re: les listes chainés en C   les listes chainés en C Icon_minitimeVen 11 Jan - 0:13

Embarassed AHHHHH sayer j ai compris merci.
Revenir en haut Aller en bas
Benayada Houari
Administrateur
Administrateur
Benayada Houari


Masculin
Nombre de messages : 89
Age : 37
Localisation : Chlef
Loisirs : Sport
Date d'inscription : 14/03/2007

les listes chainés en C Empty
MessageSujet: Re: les listes chainés en C   les listes chainés en C Icon_minitimeVen 11 Jan - 0:14

Aucun problèm Nadia....
Revenir en haut Aller en bas
Contenu sponsorisé





les listes chainés en C Empty
MessageSujet: Re: les listes chainés en C   les listes chainés en C Icon_minitime

Revenir en haut Aller en bas
 
les listes chainés en C
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» 1 exo sur les chaines
» les chaines de caractere 1ere partie

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
une Base Solide en Programmation :: HBPCCLUB ACADEMY :: C-
Sauter vers:  
Ne ratez plus aucun deal !
Abonnez-vous pour recevoir par notification une sélection des meilleurs deals chaque jour.
IgnorerAutoriser