IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

table de hachage/modules


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Avril 2010
    Messages
    115
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2010
    Messages : 115
    Par défaut table de hachage/modules
    Bonjour,

    il s'agit qu'une table de hachage de maniere à ce que chaque case du tableau contient une liste chainée, j'utilise 4 modules:

    lca.h /*liste chainee*/

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    typedef struct CELLULE {
    	char* key;	
    	int  data;
    	struct CELLULE* suivante;
    }CELLULE;
    typedef CELLULE* LCA;      /*je définis le type liste chainée qui               pointe  vers la   première Cellule */
     
    void detruire(LCA *chaine);  /*prototype de la fonction detruire*/
    lca.c /*liste chainee*/
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    #include "lca.h"  
    void detruire(LCA *chaine){       /*implementation de detruire*/
     
    	if ((*chaine)!=NULL){		
    		LCA tmp= *chaine;
    		*chaine=(*chaine)->suivante;
    		free(tmp);
    		tmp=NULL;
    		detruire(&(*chaine));
    	}
    }

    th.h /*table de hachage*/

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    include "lca.h"
    #define CAPA 4
    typedef LCA  TH[CAPA];   /*définir le type table de hachage*/
     
    void vider(TH* hash);   /*prototype de la fonction vider*/
    th.c /*table de hachage*/
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    #include "th.h"
    void vider(TH* hash) {
     
    	for(int i=0 ; i<CAPA ; i++)
     
    		detruire(&(*hash)[i]);
    }
    Je reçois l'erreur
    th.o: In function `vider':
    /REP/th.c:23: undefined reference to `detruire' . Or le prototype de cette fonction est inclus dans th.c a travers th.h elle même incluant lca.h !! Quand je change les argument de détruire je reçois une erreur de mauvais type d'arguments ??!!!

    MERCI D'AVANCE pour toute réponse

  2. #2
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Avril 2010
    Messages
    115
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2010
    Messages : 115
    Par défaut
    Desolé
    le probleme venait du makefile, quand j'ai passé des listes chainees aux tables de hachage j'ai pas fait le makedepend!!!!!!!!!!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. table de hachage
    Par mrtatou dans le forum Langage
    Réponses: 4
    Dernier message: 18/01/2006, 09h41
  2. Table de hachage
    Par Gryzzly dans le forum Algorithmes et structures de données
    Réponses: 1
    Dernier message: 25/12/2005, 17h31
  3. statut d'une table dans un module de donnee
    Par kewine dans le forum Bases de données
    Réponses: 3
    Dernier message: 17/11/2005, 03h56
  4. [Conception] Table de hachage et doublons de clés
    Par mammou dans le forum Collection et Stream
    Réponses: 2
    Dernier message: 13/05/2004, 19h16
  5. Réponses: 2
    Dernier message: 05/02/2004, 12h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo