Re: Liste doublement chainée
Citation:
Envoyé par sorry60
Salut !
Je me lance dans les listes doublement chainées.
J'ai implémenté les 2 premieres fonctions de base : l'ajout en tete, et l'affichage.
- Il manque les gardes dans le listed.h (idem dans le code de la liste simple : liste.h)
- Il manque les prototypes des fonctions dans listed.h
- Avec les listes doubles (et simples, aussi, d'ailleurs), il faut préciser si on ajoute en tête ou en queue. C'est soit un paramètre, soit deux fonctions séparées...
- Fuites mémoire...
Code:
1 2 3
| SYSALLOC Bloc 003D24C8 (12 bytes) malloc'ed at line 8 of 'listed.c' not freed
SYSALLOC Bloc 003D24E0 (12 bytes) malloc'ed at line 8 of 'listed.c' not freed
SYSALLOC Bloc 003D24F8 (12 bytes) malloc'ed at line 8 of 'listed.c' not freed |
Re: Liste doublement chainée
Citation:
Envoyé par Emmanuel Delahaye
- Il manque les gardes dans le listed.h (idem dans le code de la liste simple : liste.h)
- Il manque les prototypes des fonctions dans listed.h
- Avec les listes doubles (et simples, aussi, d'ailleurs), il faut préciser si on ajoute en tête ou en queue. C'est soit un paramètre, soit deux fonctions séparées...
- Fuites mémoire...
Code:
1 2 3
| SYSALLOC Bloc 003D24C8 (12 bytes) malloc'ed at line 8 of 'listed.c' not freed
SYSALLOC Bloc 003D24E0 (12 bytes) malloc'ed at line 8 of 'listed.c' not freed
SYSALLOC Bloc 003D24F8 (12 bytes) malloc'ed at line 8 of 'listed.c' not freed |
Ok merci pour ces critiques, je m'occuppe de ça tres vite.
Juste une question : c'est quoi une garde ? (ifdef _cplusplus...?)
Re: Liste doublement chainée
Citation:
Envoyé par sorry60
Juste une question : c'est quoi une garde ? (ifdef _cplusplus...?)
Protection anti inclusions multiples.
http://emmanuel-delahaye.developpez....ganiser_source
http://emmanuel-delahaye.developpez.....htm#organiser
Re: Liste doublement chainée
Citation:
Envoyé par Emmanuel Delahaye
[*]Fuites mémoire...
Code:
1 2 3
| SYSALLOC Bloc 003D24C8 (12 bytes) malloc'ed at line 8 of 'listed.c' not freed
SYSALLOC Bloc 003D24E0 (12 bytes) malloc'ed at line 8 of 'listed.c' not freed
SYSALLOC Bloc 003D24F8 (12 bytes) malloc'ed at line 8 of 'listed.c' not freed |
Comment tu fais pour reperer les fuites memoires ? Qu'utilises tu ?
Re: Liste doublement chainée
Citation:
Envoyé par Jack_serious
Citation:
Envoyé par Emmanuel Delahaye
[*]Fuites mémoire...
Code:
1 2 3
| SYSALLOC Bloc 003D24C8 (12 bytes) malloc'ed at line 8 of 'listed.c' not freed
SYSALLOC Bloc 003D24E0 (12 bytes) malloc'ed at line 8 of 'listed.c' not freed
SYSALLOC Bloc 003D24F8 (12 bytes) malloc'ed at line 8 of 'listed.c' not freed |
Comment tu fais pour reperer les fuites memoires ? Qu'utilises tu ?
Son propre traqueur il me semble... SYSALLOC il s'appelle, je crois (sur son site, dans les modules si cela n'a pas changé depuis le temps...)
Re: Liste doublement chainée
Citation:
Envoyé par Pouic
Citation:
Envoyé par Jack_serious
Citation:
Envoyé par Emmanuel Delahaye
[*]Fuites mémoire...
Code:
1 2 3
| SYSALLOC Bloc 003D24C8 (12 bytes) malloc'ed at line 8 of 'listed.c' not freed
SYSALLOC Bloc 003D24E0 (12 bytes) malloc'ed at line 8 of 'listed.c' not freed
SYSALLOC Bloc 003D24F8 (12 bytes) malloc'ed at line 8 of 'listed.c' not freed |
Comment tu fais pour reperer les fuites memoires ? Qu'utilises tu ?
Son propre traqueur il me semble... SYSALLOC il s'appelle, je crois (sur son site, dans les modules si cela n'a pas changé depuis le temps...)
Voui.
http://emmanuel-delahaye.developpez.com/clib.htm
Module SYSALLOC
Re: Liste doublement chainée
Citation:
Envoyé par Emmanuel Delahaye
Oui je les avais mais ça compilait pas 8O
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
#ifndef LISTED_H
#define LISTED_H
#include <stdio.h>
#include <stdlib.h>
typedef struct noeud
{
int val;
struct noeud *pSuiv;
struct noeud *pPrec;
}noeud;
typedef struct list
{
noeud *pTete;
noeud *pQueue;
}list; |
Citation:
1 C:\Documents and Settings\Thomas\Mes documents\Langage C\Exercices\Listes\DoublementChainée\listed.c In file included from listed.c
1:2 C:\Documents and Settings\Thomas\Mes documents\Langage C\Exercices\Listes\DoublementChainée\listed.h invalid preprocessing directive #ifndef
Re: Liste doublement chainée
Citation:
Envoyé par sorry60
Oui je les avais mais ça compilait pas 8O
Et le #endif, il est où ? Et je recommande H_LISTED pour éviter de commencer un jour par E, qui est reservé...
Re: Liste doublement chainée
Citation:
Envoyé par Emmanuel Delahaye
Citation:
Envoyé par sorry60
Oui je les avais mais ça compilait pas 8O
Et le #endif, il est où ?
Arf quel idiot ! :sm: :scarymov: