FAQ PureBasicConsultez toutes les FAQ

Nombre d'auteurs : 7, nombre de questions : 68, dernière mise à jour : 3 janvier 2013  Ajouter une question

 

Bienvenue dans la F.A.Q. PureBasic !

Celle-ci va tenter de répondre aux questions les plus fréquemment posées sur le langage PureBasic et tous ses outils de programmation. Si elle n'a pas pour vocation de répondre à toutes les interrogations possibles, elle reste une bonne base de connaissances sur le PureBasic, et ne demande qu'à être enrichie par vos expériences personnelles.

Bien entendu, malgré toute l'attention qui a pu être portée à cette F.A.Q., des erreurs ont toujours pu s'y glisser. Prenez donc toutes les précautions qui s'imposent avant d'essayer un exemple.

Nous vous souhaitons une bonne lecture ! Et n'oubliez pas qu'en cas de problème, vous pourrez toujours poser votre question sur le forum PureBasic !

L'équipe PureBasic de Developpez.


SommaireLes structures (2)
précédent sommaire suivant
 

Définition d'une structure

Code purebasic : Sélectionner tout
1
2
3
4
5
6
 
Structure MaStructure 
  Donnee.f 
  texte.s 
  Tableau.q[3] 
EndStructure
Utilisation de la structure précédente

Code purebasic : Sélectionner tout
1
2
3
4
5
 
Define MaVariable.MaStructure 
MaVariable\Donnee = 34.32 
MaVariable\texte = "Salut" 
MaVariable\Tableau[0] = 123456789
Ou encore

Code purebasic : Sélectionner tout
1
2
3
4
5
6
7
 
Define MaVariable.MaStructure 
With MaVariable 
  \Donnee = 34.32 
  \texte = "Salut" 
  \Tableau[0] = 123456789 
EndWith

Mis à jour le 5 décembre 2010 comtois

Vous avez 2 façons de déclarer un tableau dans une structure.

  • Soit un tableau statique.
  • Soit un tableau dynamique.

Exemple avec un tableau statique :

Code purebasic : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
Structure pointF 
  x.f 
  y.f 
EndStructure 
   
Structure TableauStatique 
  Champ1.q 
  Champ2.d 
  MonTableau.pointF[4] ; Le tableau comporte 4 éléments de type PointF  
EndStructure 
 
Define MaVariable.TableauStatique 
 
MaVariable\MonTableau[3]\x = 34.67
Pour déclarer un tableau dynamique dans une structure, utilisez le mot clé Array.

Exemple avec un tableau dynamique :

Code purebasic : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
Structure pointF 
  x.f 
  y.f 
EndStructure 
   
Structure TableauDynamique 
  Champ1.q 
  Champ2.d 
  Array MonTableau.pointF(4) ; Le tableau comporte 5 éléments de type PointF  
EndStructure 
 
Define MaVariable.TableauDynamique 
 
MaVariable\MonTableau(3)\x = 34.67
Vous pouvez redimensionner un tableau dynamique avec la commande ReDim.
Pour le vérifier, ajoutez ces 2 lignes au code précédent.

Code purebasic : Sélectionner tout
1
2
3
 
ReDim MaVariable\MonTableau.pointF(6) 
MaVariable\MonTableau(6)\x = 567.21
Avant la version 5.00 il n'était pas possible de déclarer un tableau à plusieurs dimensions dans une structure.
La solution consistait à créer une autre structure (l'astuce est valable pour les 2 types de tableau) :

Code purebasic : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
Structure SecondeDimension 
  Array Y.f(6)  
EndStructure 
 
Structure TableauDynamique 
  Champ1.q 
  Champ2.d 
  Array X.SecondeDimension(4)  
EndStructure 
 
Define MaVariable.TableauDynamique 
 
MaVariable\X(2)\Y(3) = 34.67
A partir de la version 5.00, c'est beaucoup plus simple :

Code purebasic : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
 
Structure TableauDynamique 
  Champ1.q 
  Champ2.d 
  Array MonTableau.f(4, 6)  
EndStructure 
 
Define MaVariable.TableauDynamique 
 
MaVariable\MonTableau(2, 3) = 34.67
Code purebasic : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 
Structure Attribut 
  Champ1.f 
  Champ2.i 
  Champ3.s 
EndStructure 
 
Structure TableauDynamique 
  Champ1.q 
  Champ2.d 
  Array MonTableau.Attribut(2, 4, 6)  
EndStructure 
 
Define MaVariable.TableauDynamique 
 
MaVariable\MonTableau(0, 2, 5)\Champ1 = 34.67 
MaVariable\MonTableau(0, 2, 5)\Champ2 = 1234 
MaVariable\MonTableau(0, 2, 5)\Champ3 = "Toto"

Mis à jour le 4 juillet 2011 comtois

Proposer une nouvelle réponse sur la FAQ

Ce n'est pas l'endroit pour poser des questions, allez plutôt sur le forum de la rubrique pour ça


Réponse à la question

Liens sous la question
précédent sommaire suivant
 

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2018 Developpez Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.

 
Responsable bénévole de la rubrique PureBasic : comtois -