Liste chainée en C !
cyberlulu
-
dark -
dark -
Salut !
j'ai un pb au niveau des listes chainées. j'ai déclaré la structure et l'élément liste comme ca :
jusque là, il n'y a pas de pb, tt fonctionne.
après, je veux un tableau de liste donc j'ai écrit :
et ainsi de suite jusqu'à 10. le problème qui se pose c'est au niveau de : tableau[0]->valeur="a";
tableau[0]->suivant=NULL;
je ne sais pas ce qui ne fonctionne pas... si qqun sait le problème qu'il y a, merci de me l'expliquer.
@+
j'ai un pb au niveau des listes chainées. j'ai déclaré la structure et l'élément liste comme ca :
typedef struct elem {char valeur; struct elem * suivant; } element; typedef element * liste;
jusque là, il n'y a pas de pb, tt fonctionne.
après, je veux un tableau de liste donc j'ai écrit :
liste tableau[10]; tableau[0]->valeur="a"; tableau[0]->suivant=NULL;
et ainsi de suite jusqu'à 10. le problème qui se pose c'est au niveau de : tableau[0]->valeur="a";
tableau[0]->suivant=NULL;
je ne sais pas ce qui ne fonctionne pas... si qqun sait le problème qu'il y a, merci de me l'expliquer.
@+
A voir également:
- Les liste chainée en c
- Liste déroulante excel - Guide
- Liste déroulante en cascade - Guide
- Liste code ascii - Guide
- Site dangereux liste - Guide
- Voir liste d'amis facebook - Guide
4 réponses
Bonjour!!
Tu essayes de mettre une chaine de caractères dans un caractères!
Il faut que tu utilises les ' pas les ".
Sinon, je pense que ça ne marchera pas parceque tu n'alloue pas la place qu'il faut!
Pour chaque case de ton tableau, il faut que tu fasses un malloc!! ;-)
Je ne me souviens plus de la syntaxe exacte, mais c'est un truc comme ça:
Maily :-))))
ragondin, va au coin!
Tu essayes de mettre une chaine de caractères dans un caractères!
Il faut que tu utilises les ' pas les ".
Sinon, je pense que ça ne marchera pas parceque tu n'alloue pas la place qu'il faut!
Pour chaque case de ton tableau, il faut que tu fasses un malloc!! ;-)
Je ne me souviens plus de la syntaxe exacte, mais c'est un truc comme ça:
for (int i=0; i<10; i++){ tableau[i]= malloc (sizeof( element)); }
Maily :-))))
ragondin, va au coin!
Bonjour, moi j'arrive pas a comprendre les poiteurs je trouve pas pas un cours bien detailé,meme pb avec les listes,les files,les piles et les arbres
effectivement, c'est le malloc qu'il fallait faire. j'avais pas alloué de place... faut dire j'ai un peu du mal avec ca. je croyais qu'en déclarant liste tableau[10], c'était bon...
En java oui... Le problème du C, c'est que tu dois tout allouer et tout désallouer si tu veux que tes programmes soient optimaux!
Maily :-))))
ragondin, va au coin!
si depuis 2004 il n'a toujours pas compris alors c'est grava :-DD