begin process at 2010 03 15 06:42:01
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Base de données

 > 

Autre

 > 

Ajout dans un arbre et problème de pointeurs


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Ajout dans un arbre et problème de pointeurs

mardi 31 octobre 2006 à 11:29:56 | Ajout dans un arbre et problème de pointeurs

nikoland

[code] #include <stdio.h>
#include <stdlib.h>

typedef struct poste
{
        long info ;     
        struct poste *fg, *fd ;
} poste ;

typedef poste *ptr_poste ;


void ajout_poste(ptr_poste *p, long val)
{
        if(*p == NULL)
        {
                *p= malloc(sizeof(poste)) ;
                *p.info= val ;
                *p->fg= NULL ;
                *p->fd= NULL ;
        }
        elseif(val < *p->info)
        {
                ajout_poste(&(*p->fg), val) ;
        }
        else
        {
                ajout_poste(&(*p->fd), val) ;
        }
}


int main()
{
        ptr_poste MonArbre ;
       
       
        ajout_poste(&MonArbre, 10) ;
       
        system("pause") ;
        return0 ;
}[/code]



Bon, j'ai recopié un code qui paraîssait sans histoire sur le papier sauf qu'à la compilation j'ai le droit à ces messages :

gcc main.c -o main.exe
main.c: In function `ajout_poste':
main.c:18: error: request for member `info' in something not a structure or union
main.c:19: error: request for member `fg' in something not a structure or union
main.c:20: error: request for member `fd' in something not a structure or union
main.c:22: error: request for member `info' in something not a structure or union
main.c:24: error: request for member `fg' in something not a structure or union
main.c:28: error: request for member `fd' in something not a structure or union
make: *** [main.exe] Error 1


Une âme charitable pouraît-elle me sortir de ce mauvais pas ?

Merci d'avance

Nikö
mardi 31 octobre 2006 à 12:11:11 | Re : Ajout dans un arbre et problème de pointeurs

vecchio56

Administrateur CodeS-SourceS
Problème de priorité d'opérateurs sans doute:

*p.info= val ;

Il faut mettre
(*p).info= val ;
ou mieux:
p->info = val;

Pareil pour les autres champs de la structure

_____________________________________
Un éditeur de ressources gratuit pour Windows

mardi 31 octobre 2006 à 12:18:58 | Re : Ajout dans un arbre et problème de pointeurs

julienbj

Réponse acceptée !

Vecchio a vu juste, probleme de priorité.
Par contre tu passes a ta fonction un ptr_poste *p, ce qui est la meme chose que poste **p.
Donc il ne faut pas faire (*p).info, mais (*p)->info et idem pour les autres champs (fg et fd).

Vive le C
Savon

mardi 31 octobre 2006 à 13:33:25 | Re : Ajout dans un arbre et problème de pointeurs

vecchio56

Administrateur CodeS-SourceS
Ah oui j'avais pas fait gaffe

_____________________________________
Un éditeur de ressources gratuit pour Windows

mardi 31 octobre 2006 à 14:26:11 | Re : Ajout dans un arbre et problème de pointeurs

nikoland

C'est bon merci.

J'ai passé du temps sur cette connerie et il me semble même qu'hier, ce que vous me dîtes ne marchait pas !

Tout va bien désormais !

Nikö


Cette discussion est classée dans : poste, error, ajout, in, main


Répondre à ce message

Sujets en rapport avec ce message

"graphics.h" problème de compilation [ par carole ] J'utilise l'ide Borland 4.5 et je souhaite faire du graphisme.Mon problème et que lorsque je compile l'exemple borland ci dessous,#include #include #i linker error: undefined symbol"_..."in module"..." [ par nicassy ] Bonjour,En fait le problème se trouve au niveau de l'edition des liens, il me dit "undefined symbol" pour textcolor, textbackground,cscanf, cprintf, Utilisation de PCAP dans VC++6 sous XP [ par anthanos ] Aprés deux bonnes semaines de galére dans mon coin....J'en viens sur le forum, pour chercher de l'aide, sur l'utilisation de la librairie PCAP !!!Le b Erreur à la compilation [ par norton ] bonsoir, si je fait #include "entree.h" dans le main.cpp quand je lance la compilation j'ai ces erreurs: --------------------Configuration: Jack - Win PENDU TOF2503 [ par Samir1986 ] Salut à tous,J'ai essayé de compiler le pendu de tof2503 sous pelles C mais il ne compile pas. L'erreur est la suivante: Building main.obj. C:\Program Je cherche une librairie [ par CyberP ] Je cherche la librairie qui correspond au fctions :- RasEnumConnections()- RasHangUp()Elles sont toutes les deux dans le fichier d'en-tête "ras.h"Car Intégration de GTK dans Visual Studio faite à 90% [ par Crazy_Joe ] Bonjour, J'ai trouvé le toolkit de GTK pour intégrer GTK à DevC++. Je l'ai utilisé pour en fait intégrer GTK mais à Visual Studio. Suffit de mettre l ajout d'une chaine à une autre [ par mathieu57100 ] j'ai la fonction main suivante mais le réusltat ne donne pas ce que je voudrais... int main(void){    /*Affiche la date et l'heure*/    time_t t;    t comment interpreter le essage d'erreur "error: stray '\160' in program" ?? [ par titoune85 ] Bonjour à tous heureux développeurs et dveloppeuses !Je débute en langage C dans le cadre de mes études. Actuellement j'essaye de développer un petit help avec Mastermind en c [ par isododge ] bonjour, Parceque je ne suis pas bien en français, je peux parler en anglais. Si tu ne comprends pas, je veux poser ma question en français. Puis...I'


Nos sponsors


Appels d'offres

Sondage...

Comparez les prix


HTC Hero

Entre 550€ et 550€

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Photothèque

 
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

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,295 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales