Des petits exemples, histoire d'apprendre PureBasic...
Que des string en data:
====================
Code : Tout sélectionner
Dim NOM$(3)
Dim age(3)
Dim taille(3)
Restore debutdata
For i=1 To 3
Read.s nom$(i)
Read.s tmp$
age(i) = Val(tmp$)
Read.s tmp$
taille(i) = Val(tmp$)
Next i
DataSection
debutdata:
Data.s "toto le héros","12","134"
Data.s "beavis","47","180"
Data.s "butthead","48","178"
EndDataSection
For i=1 To 3
Debug nom$(i)
Debug age(i)
Debug taille(i)
Next i
Utilisation d'une Macro:
====================
Code : Tout sélectionner
Dim NOM$(3)
Dim age(3)
Dim taille(3)
Macro ReadInt(tab)
Read.s tmp$
tab(i) = Val(tmp$)
EndMacro
Restore debutdata
For i=1 To 3
Read.s nom$(i)
ReadInt(age)
ReadInt(taille)
Next i
DataSection
debutdata:
Data.s "toto le héros","12","134"
Data.s "beavis","47","180"
Data.s "butthead","48","178"
EndDataSection
For i=1 To 3
Debug nom$(i)
Debug age(i)
Debug taille(i)
Next i
Utilisation d'une procedure (sous-programme):
======================================
Code : Tout sélectionner
Dim NOM$(3)
Dim age(3)
Dim taille(3)
Procedure ReadInt(Array tab(1),i); ici le "1" veut dire 1 dimension pour le tableau
Read.s tmp$
tab(i) = Val(tmp$)
EndProcedure
Restore debutdata
For i=1 To 3
Read.s nom$(i)
ReadInt(age(),i)
ReadInt(taille(),i)
Next i
DataSection
debutdata:
Data.s "toto le héros","12","134"
Data.s "beavis","47","180"
Data.s "butthead","48","178"
EndDataSection
For i=1 To 3
Debug nom$(i)
Debug age(i)
Debug taille(i)
Next i
Utilisation d'un "champ de string":
=============================
Code : Tout sélectionner
Dim NOM$(3)
Dim age(3)
Dim taille(3)
Restore debutdata
For i=1 To 3
Read.s tmp$
k= 1
nom$(i) = StringField(tmp$, k, ",")
age(i) = Val(StringField(tmp$, k+1, ","))
taille(i) = Val(StringField(tmp$, k+2, ","))
Next i
DataSection
debutdata:
Data.s "toto le héros,12,134"
Data.s "beavis,47,180"
Data.s "butthead,48,178"
EndDataSection
For i=1 To 3
Debug nom$(i)
Debug age(i)
Debug taille(i)
Next i
et il existe probablement bien d'autres façon s de faire !
M.