begin process at 2012 02 13 00:02:55
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Base de données

 > 

Autre

 > 

erreur dans une liste simple


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

erreur dans une liste simple

mercredi 10 octobre 2007 à 21:33:08 | erreur dans une liste simple

sakjimh

salut,
j'ai crée un programme qui saisie une liste et les affiche a l'execution
mais il m'affiche une erreur genre probleme d'allocation et je ne vois pas ou?
alors pouvez vous m'aider.
merci,
#include <stdio.h>
#include <malloc.h>
typedef struct liste
{
int val;
struct liste *suivant;
} noeud;
void inserer_liste(noeud *l,int v)
{
noeud *nouveau;
noeud *parcour;
nouveau=(noeud *)malloc(sizeof(noeud*));
nouveau->val=v;
nouveau->suivant=NULL;
if(l==NULL)
l=nouveau;
else
{
parcour=l;
while(parcour->suivant!=NULL)
parcour=parcour->suivant;
parcour->suivant=nouveau;
}
l=parcour;
}
void affiche(noeud *l)
{
noeud *parcour;
parcour=l;
while(l->suivant!=NULL)
{
parcour=parcour->suivant;
printf("%d",parcour->val);
}
}
void main()
{
int i;
noeud *maliste;
maliste=NULL;
for(i=0;i<6;i++)
inserer_liste(maliste,i);
affiche(maliste);
}
mercredi 10 octobre 2007 à 22:53:21 | Re : erreur dans une liste simple

yann_lo_san

Si tu fais :
nouveau=(noeud *)malloc(sizeof(noeud*));
Il manquera 4 octets dans ton allocation.

sizeof(POINTEUR*) alloue 4 octets même si ça pointe sur 1000 octets.

sizeof(noeud) allouera bien 8 octets.

mercredi 10 octobre 2007 à 23:02:28 | Re : erreur dans une liste simple

DeAtHCrAsH

Un pointeur est codé sur 32 bits soit de 4 octets, d'où le sizeof(noeud*) = 4.

Shell
vendredi 12 octobre 2007 à 16:20:39 | Re : erreur dans une liste simple

sakjimh

non ca ne change rien
samedi 13 octobre 2007 à 00:07:11 | Re : erreur dans une liste simple

mezaya

dans ton main ma liste vaut toujours NULL même apres les inserts car tu passe ton pointeur par copie. plusieur solution possible : void inserer_liste(noeud** l,int v) void inserer_liste(noeud*& l,int v) noeud* inserer_liste(noeud* l,int v) et pense bien a faire un sizeof(noeud)

Voili,Voilou javascript:Insert_Emoticon('/imgs2/smile_wink.gif');


Cette discussion est classée dans : affiche, liste, parcour, noeud, maliste


Répondre à ce message

Sujets en rapport avec ce message

Liste chaînée, besoin d'aide! [ par mystik007 ] Bonjour, je dois coder un programme qui manipule les listes chaînées, j'aurais besoin d'aide pour les fonction (initialiser la liste, allouerNoeud pou créer une liste à partir d'un arbre [ par morganistic ] bonjour a tous!voila deux structures : une liste et un arbre.je n arrive pas a parcourir un arbre en inserant chaque noeud de l arbre dans une liste.. Parcour d'un répertoire [ par garslouche ] Bonjour,je voudrais afficher dans une listbox tous les sous-répertoires d'un répertoire donnéPour le remplissage de la liste...ça va aller...mais pour insertion d'un noeud en premiere position d'une liste d'enfants [ par Cako19 ] Bonjour,J'utilise Visual C++ et MSXML4.0.Je souhaiterais insérer un noeud auparavant cloné au début d'une liste d'enfants et non à la fin comme avec l discuter un graphe [ par azamharir ] salutje dois implementer un graphe (graphe : cas général). je cherche la meilleure structure possible.je crois que je vais utiliser celle ci :une clas trouve le mot suivant dans l'ordre alphabétique (liste chainee simple) [ par chickens ] Bonjour,j'ai un probleme,il me faut trouve le mot suivant dans l'ordre alphabetique dans une liste chainee simple(sachant que l'ajout s'est fait au de trier une liste simplement chaine [ par mdh12 ] je veux faire le trie d'une liste chaine mon code ne me donne pas le resulta juste pouvez le couriger #include #include #include typedef struct noe fusion de deux liste simplement chaine [ par mdh12 ] salut, je veux faire fusion de deux liste simplement chaine a condition que la liste 1 est trier coissant de meme pour la liste 2 j'ai base sur le Liste chainée passée en paramètre [ par morayma ] J'ai écrit un petit programme qui appelle une procédure qui ajoute des éléments à une liste chainée simple. Mon problème c'est que la liste n'est pas besoin d'aide sur mon programme arbre binaire en c++ [ par biyiha ] bonjour, voici mon code ecrit en c++ c++ qui m'affiche pleins d'erreur;; il s'agit des arbres binaires de recherche , quelqu'un pourrait -il m'aider,


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 10,889 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales