Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : erreur dans une liste simple [ Base de données / Autre ] (sakjimh)

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é 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 probleme d'execution [ par cyrina84 ] Bonjour, jai un probleme au niveau de mon programme. quand je fais le run il maffiche aucune e urgent [ par cyrina84 ] salutà tousJai un probleme qui me bloque: jai une table de hachage chainé: un tableau de liste chainé#ifndef TABLE_HASH#define TABLE_HASH</s probleme avecma fonction de suppression en c urgent!!!!!!!!! [ par cyrina84 ] Bonsoir àtous jai un probleme avec cette fonction qui doit supprimer le 1er element de la table de hacahge. elle nefonctionne pas: affiche des erreurs probleme avec une fonction de jointure des éléments de liste [ par cyrina84 ] bonjour à tous, j'ai un gros probleme dans ma fonction en Ccette fonction pren en entrée une liste chainée qui contient des couples de mots (exemple:


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



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
Temps d'éxécution de la page : 0,312 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.