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 :

création d'un arbre


Sujet :

C

  1. #1
    Membre actif
    Femme Profil pro
    Enseignant
    Inscrit en
    Août 2012
    Messages
    71
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2012
    Messages : 71
    Par défaut création d'un arbre
    bonjour,

    je suis débutante en langage c et je veux programmer un arbre binaire, j'ai commencé avec le code suivant mais il m'affiche des erreurs
    creationarbre.h
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
    #ifndef __TREE__H__
    #define __TREE__H__
     
    #include <stdio.h>
    #include <stdlib.h>
     
    typedef struct Tree
     
    {
       	int value;
    	struct Tree *left;
    	struct Tree *right;
    	struct Tree *parent;
    }Tree;
     
    Tree *new_tree(int x)
     
     
    #endif
    creationarbre.c

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    #include "creationarbre.h"
     
    Tree *new_tree(int x)
    {
         Tree *tr=malloc(sizeof(*tr));
     
         if (tr==NULL)
         {
            fprintf(stderr,"erreur\n");
            exit(EXIT_FAILURE);                       
         }
     
         tr->value=x;
         tr->left=NULL;
         tr->right=NULL;
         tr->parent=NULL;
     
     
         printf("creation de %d\n",tr->value);
     
         return tr;
     
    }
    main.c
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    #include "creationarbre.h"
     
    int main(void)
    {
     Tree *Arbre=new_tree(2);
     
     return 0;   
     
    }

    apres execution l'erreur suivante s'affiche:

    C:\Dev-Cpp\proj\mainn.c In function `main':
    5 C:\Dev-Cpp\proj\mainn.c `Tree' undeclared (first use in this function)
    (Each undeclared identifier is reported only once
    for each function it appears in.)
    5 C:\Dev-Cpp\proj\mainn.c `Arbre' undeclared (first use in this function)

  2. #2
    Membre éclairé Avatar de Bayard
    Inscrit en
    Juin 2002
    Messages
    863
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 863
    Par défaut
    Chez moi, sous linux, cela compile
    gcc -I . creationarbre.c main.c -g
    en le lançant, on a:
    creation de 2

  3. #3
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 811
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 811
    Billets dans le blog
    1
    Par défaut
    Bonjour
    Citation Envoyé par lynaranya Voir le message
    C:\Dev-Cpp\proj\mainn.c In function `main':
    5 C:\Dev-Cpp\proj\mainn.c `Tree' undeclared (first use in this function)
    On dirait qu'il ne trouve pas "Tree" qui est défini dans "creationarbre.h". Donc il semble que le #include "creationarbre.h" se fasse mal. Il faudrait que tu nous dises quel est ton environnement de programmation C (VisualStudio ? MinGW ? Eclipse ? etc) car sous Linux, en compilation directe, ça fonctionne.

    Et ensuite cette première erreur entraine toutes les autres.
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  4. #4
    Membre actif
    Femme Profil pro
    Enseignant
    Inscrit en
    Août 2012
    Messages
    71
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2012
    Messages : 71
    Par défaut
    bonsoir;
    je travail sous Windows, et le langage c'est DevC++, après enregistrement mes fichiers sont enregistrer sous c, tous les autres programmes ont marché sauf celui la, et je ne peut continuer avec cette erreur

  5. #5
    Membre éclairé Avatar de Bayard
    Inscrit en
    Juin 2002
    Messages
    863
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 863
    Par défaut
    Que rentrez-vous comme chemin des includes ?

  6. #6
    Membre actif
    Femme Profil pro
    Enseignant
    Inscrit en
    Août 2012
    Messages
    71
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2012
    Messages : 71
    Par défaut
    j'ai pas compris votre question,

    Que rentrez-vous comme chemin des includes ?

  7. #7
    Membre éclairé Avatar de Bayard
    Inscrit en
    Juin 2002
    Messages
    863
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 863
    Par défaut
    Il faut spécifier à DevC++ où se situe le fichier creationarbre.h.

    Il doit y avoir un paramètre "include path" quelque part dans votre IDE. Même si le fichier creationarbre.h est située à côté des fichiers .c, il faut indiquer le chemin des includes.

    l'option -I "-I monchemin" permet de le faire avec gcc

    https://caiorss.github.io/C-Cpp-Note...s-options.html

  8. #8
    Membre actif
    Femme Profil pro
    Enseignant
    Inscrit en
    Août 2012
    Messages
    71
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2012
    Messages : 71
    Par défaut
    merci pour votre réponse, le code s’exécute enfin, c'était un problème de chemin,

    maintenant je veux construire un arbre , chaque nœud contient une valeur de type réel, ces valeurs représentent le contenu d'une matrice,
    j'ai construit une boucle qui permet de lire la matrice mais ça na pas marché

  9. #9
    Membre éclairé Avatar de Bayard
    Inscrit en
    Juin 2002
    Messages
    863
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 863
    Par défaut
    Postez votre code je vous prie.

  10. #10
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 811
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 811
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par lynaranya Voir le message
    j'ai construit une boucle qui permet de lire la matrice mais ça na pas marché
    Pas de chance


    PS: t'es vraiment enseignant pour poser ce genre de question ???
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

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

Discussions similaires

  1. Création d'un arbre à partir d'une liste contigue
    Par karaz_karaz dans le forum C
    Réponses: 2
    Dernier message: 28/06/2008, 23h51
  2. [WD10] Création d'un Arbre comme l'explorateur
    Par Louis Griffont dans le forum WinDev
    Réponses: 2
    Dernier message: 23/02/2007, 08h30
  3. JTree création de l'arbre, conseil?
    Par menuge dans le forum Composants
    Réponses: 4
    Dernier message: 23/05/2006, 17h53
  4. Création d'un arbre n-aire
    Par Premium dans le forum Algorithmes et structures de données
    Réponses: 4
    Dernier message: 21/05/2006, 17h01
  5. [débutant Java] création d'un arbre binaire
    Par barouz dans le forum Langage
    Réponses: 2
    Dernier message: 16/04/2006, 04h25

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