01net    Web


Actuellement en ligne : 296 Utilisateurs dont 14 dans Programmation et développement >S'inscrire      >S'identifier      >Recherche      >Aide  
modéré par A.Ouloube, Beno@  
01net > Forum de 01net > Programmation et développement > C/C++
> structure et pointeur *next (arbre / tree)
Auteur
Message
 
<     1       >
esselfe
  Je calcul donc je suis relativ
  :-)
      ?   @     Posté le 20/05/2006 12:59:04  
Voter pour ce message
Si je comprends bien,

struct host{
...char *name;
...int *next;
};

je peux utiliser *next pour une nouvelle copie de la structure?

Mais comment je fais pour y accéder après? :fume:
-->Message édité par esselfe le 30/11/2006 04:09:16<--
-------
vive Linux!
emna salhi
  
   
      ?   @     Posté le 08/08/2006 15:43:00  
Voter pour ce message
si j'ai bien compris ta question le champs next doit etre le nom d'un pointeur sur une structure de type host et non pas sur un int cad
struct host
{...
...
struct host *next;};
le champ pointe par next contiendra l'adresse de la structure directement liee a la structure contenant ce champ
exemple de code
/*------------------------------------------*/
stuct host
{int x;
struct host *next;
};
int main
{struct host *h,*p,*teteliste=NULL;
int i,n;
for(i=0;i<10;i++)
{scanf("%d",&n);
h=(struct host *) malloc(sizeof(struct host));
h->x=n;
if(teteliste==NULL) teteliste=h;
else
{p=teteliste;
while(p->next!=NULL)
p=p->next;
p->next=h;
}
h->next=NUll;
}
return 0;
}
/*--------------------------------------------------*/
ce code te permet de creer 10 structure contenant chacune 2 champs ,liees via le champ pointe par next
:hello:

icare_olivier
  arriere, band de newbies ^^
  :-)
      ?   @     Posté le 08/08/2006 16:45:53  
Voter pour ce message
Hum, en lisant le premier post, jai pas tout compris à la question... mais si ton problème est de stocker un pointeur (host*) dans un pointeur (int*) alors la réponse est simple :


// allocation
int * var = (int*)new host;

// recuperation!
host * conversion = (host*)var;
et voila.

(nom type) var ; permet de convertir var (qui a son propre type déja défini) en "nom type)
esselfe
  Je calcul donc je suis relativ
  :-)
      ?   @     Posté le 11/08/2006 17:42:19  
Voter pour ce message
emna salhi va dans ma direction. Oui je crois m'être trompé sur le type de pointeur que j'avais de besoin pour mieux comprendre.!

Donc ce pointeur contient l'adresse du groupe strucure suivant. ..jusqu'à ce que l'on veut! pas mal ça. YÉ!!!


ouaip icare_olivier, ce sont des cast. :jap:




:fume:

a++
-->Message édité par esselfe le 11/08/2006 17:47:09<--
-------
vive Linux!
icare_olivier
  arriere, band de newbies ^^
  :-)
      ?   @     Posté le 11/08/2006 17:46:48  
Voter pour ce message
Ca s'appelle une liste chainée ;) je te laisse deviner pourquoi lol.
Je te conseille d'utiliser de préférence les listes doublement chainée : c'est pareil, sauf qu'au lieu d'avoir une classe qui pointe sur la suivante, une classe pointe sur la suivante ET la précédente. Ca permet de revenir "en arrière" :/
esselfe
  Je calcul donc je suis relativ
  :-)
      ?   @     Posté le 11/08/2006 17:48:42  
Voter pour ce message
Un peu le même principe que les arbers binaires, sauf comportant des objets..
sans parler des itérateurs de plusieurs direction.


:fume:


edit: http://www.cs.bu.edu/teaching/cs112/spring-2000/binary-tree/ (anglais)
-->Message édité par esselfe le 30/11/2006 04:09:48<--
-------
vive Linux!
<     1       >

01net > Forum de 01net > Programmation et développement > C/C++
> structure et pointeur *next (arbre / tree)

Aller à :

Page générée en : 1.438s - X2board 2.2

Nous contacter | Charte de confiance | Voir notice légale

Tous droits réservés © 1999 - 2008 Groupe Tests - 01net.


Sites du réseau 01net Network : 01net - 01men - Rmc.fr - Bfmtv.fr - Radiobfm.com - TousLesPodcasts - Micro Achat

Emploi 
Rémunérations :
30 fiches salaires des métiers informatiques passées au crible  !
Elections US
Le duel MCCain/Obama : parcours, programmes, équipes et soutiens, tout sur leurs galaxies politiques