Pointeur qui pointe sur un pointeur ?

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
dd1971
Messages : 14
Inscription : mar. 09/janv./2007 16:53

Pointeur qui pointe sur un pointeur ?

Message par dd1971 »

J'ai un exemple de liste chainée simple en C que j'essaie de reproduire en PB mais je bloque, quelqu'un pourrait il me dire comment on fait pour faire pointer un pointeur sur un autre (comme ** en c ou courant->nouveau...).

J'ai un pointeur head, un autre nouveau, un autre courant et je m'en mèle les pieds (désolé pour les fote dortografs).

Je sais que les liste sont deja dans pb mais je souhaire faire ma propre chaine pour apprendre.

Si quelqu'un pourrait mettre un exemple ca serait tres gentil
(avec un enregistrement d'une structure pour la tete de la chaine, un pour la fin puis un en deuxieme position)

Merci d'avance.
DD
Dr. Dri
Messages : 2527
Inscription : ven. 23/janv./2004 18:10

Message par Dr. Dri »

Code : Tout sélectionner

Structure ma_liste
  valeur.l
  *suivant.ma_liste
EndStructure

Define.ma_liste a, b, *head

a\valeur = 5
b\valeur = 10

a\suivant = @b
*head = @a

Debug *head\suivant\valeur ;affiche la valeur de b
Dri
comtois
Messages : 5186
Inscription : mer. 21/janv./2004 17:48
Contact :

Message par comtois »

Dri a été plus rapide, mais je ne vais pas jeter mon code , puisqu'il est fait :

Code : Tout sélectionner

Structure s_List
  x.f
  y.f
  *Next
EndStructure

;Initialise une liste
Define.s_List *Tete, * Element
*Tete = AllocateMemory(SizeOf(s_List))
*Tete\Next = #Null

;Ajoute un élément
*Tete\Next = AllocateMemory(SizeOf(s_List))
*Element = *Tete\Next
*Element\Next = #Null

;Remplit l'élément
*Element\x = 12.6
*Element\y = 46.8

;Ajoute un élément
*Element\Next = AllocateMemory(SizeOf(s_List))
*Element = *Element\Next
*Element\Next = #Null

;Remplit l'élément
*Element\x = 98.9
*Element\y = 70.04

;Affiche le contenu de la liste
*Element = *Tete

While *Element\Next
  *Element = *Element\Next
  Debug *Element\x
  Debug *Element\y
  Debug "-------"
Wend
dd1971
Messages : 14
Inscription : mar. 09/janv./2007 16:53

Merci !

Message par dd1971 »

Merci Dri et Comtois, vous etes SUPER.
Ca fait 3 jours que je galère (les pointeurs ca me casse la tete) mais je sais que les maitriser c'est avoir les bonnes bases pour programmer librement.
(Déja quand j'étais p'tit j'avais horreur des Peek et des Poke avec mon VG5000 philips et CPC 464).

Abdel
Répondre