[Résolu] tableau statique

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Suduadib
Messages : 8
Inscription : mer. 06/janv./2010 20:23

[Résolu] tableau statique

Message par Suduadib »

Bonjour à tous,

J'ai besoin de vos lumières, voici mon problème:

je crée d'abord une structure contenant un tableau statique

Structure pt ;point
coo.f[3] ;coordonnées x y z
couleur.l ;couleur du point
EndStructure


ensuite je crée une procédure appelant en paramètre cette structure:

Procedure.f norme(w.pt\coo[1])
ProcedureReturn Sqr(Pow(w\coo[0],2)+Pow(w\coo[1],2)+Pow(w\coo[2],2))
EndProcedure


... et le résultat est fantaisiste, qu'est-ce qui m'échappe ?

Merci pour votre attention
Dernière modification par Suduadib le sam. 03/sept./2011 13:25, modifié 1 fois.
G-Rom
Messages : 3641
Inscription : dim. 10/janv./2010 5:29

Re: tableau statique

Message par G-Rom »

erreur de syntaxe.

Code : Tout sélectionner

procedure.f Foo( *mastructure.qqchose )
..
endprocedure
..
...
A.xxl
Foo(@A)
comtois
Messages : 5186
Inscription : mer. 21/janv./2004 17:48
Contact :

Re: tableau statique

Message par comtois »

comme ça

Code : Tout sélectionner

Enumeration
  #X
  #Y
  #Z
EndEnumeration

Structure pt ;point
coo.f[3] ;coordonnées x y z
couleur.l ;couleur du point
EndStructure

Define Test.pt

Procedure.f norme(*w.pt)
  ProcedureReturn Sqr(Pow(*w\coo[#X],2)+Pow(*w\coo[#Y],2)+Pow(*w\coo[#Z],2))
EndProcedure

Test\coo[#X] = 2
Test\coo[#Y] = 2
Test\coo[#Z] = 2
Debug norme(@Test)
ou comme ça

Code : Tout sélectionner

Structure Point3D
  x.f
  y.f
  z.f
EndStructure 

Structure pt
  coo.Point3D
  couleur.l
EndStructure

Define Test.pt

Procedure.f norme(*w.pt)
  ProcedureReturn Sqr(Pow(*w\coo\x,2)+Pow(*w\coo\y,2)+Pow(*w\coo\z,2))
EndProcedure

Test\coo\x = 2
Test\coo\y = 2
Test\coo\z = 2
Debug norme(@Test)
http://purebasic.developpez.com/
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
Suduadib
Messages : 8
Inscription : mer. 06/janv./2010 20:23

Re: tableau statique

Message par Suduadib »

Merci pour vos réponses

N'y a t'il aucun moyen d'éviter les pointeurs ?
Suduadib
Messages : 8
Inscription : mer. 06/janv./2010 20:23

Re: tableau statique

Message par Suduadib »

De plus le compilateur ne signale aucune erreur de syntaxe
Suduadib
Messages : 8
Inscription : mer. 06/janv./2010 20:23

Re: tableau statique

Message par Suduadib »

ok, encore merci, il est effectivement obligatoire d'utiliser un pointeur dans ce cas de figure

j'ai finalement trouvé ceci dans l'aide en fin de la rubrique "pointeurs":

Addresses of variables

To find the address of a variable in your code, you use the at symbol (@). A common reason For using this is when you want To pass a structured type variable To a Procedure. You must pass a pointer To this variable As you cannot pass structured variables directly.


Il me semble que ce paragraphe aurait été plus utile dans la rubrique "procédure" et que le compilateur pourrait signaler l'erreur de syntaxe. (c'est juste une suggestion afin d'aider les débutants comme moi)

Tant que j'y suis, comment fait-on pour mettre le tag "résolu" sur le topic ?
Avatar de l’utilisateur
Ar-S
Messages : 9539
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: tableau statique

Message par Ar-S »

Salut,
Sous chacun des tes Messages tu as un bouton Image
Tu cliques sur celui de ton 1er message et tu modifies le titre en y ajoutant ta balise [resolu]. :wink:
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Répondre