Seite 1 von 1
ein speicherbuffer als parameter?
Verfasst: 15.04.2007 14:39
von Knight_Rider_2000
hi,
ich habe folgenes Problem, ich möchte eine Prozedur programmieren die ein Speicherbereich von IncludeBinary als datei speichert. Wie muss ich den parameter schreiben? So?:
oder so?
oder so?
oder wie sonst?
Verfasst: 15.04.2007 14:46
von Kaeru Gaman
ich nehme an, char ist dein
Label?
Code: Alles auswählen
DataSection
char:
IncludeBinary "whatever.who"
EndDataSection
..dann liefert dir
?char die adresse des Labels.
Verfasst: 15.04.2007 15:51
von Knight_Rider_2000
so soll es sein
die labeladresse soll dann selbst eintippbar sein besonders wenn man mehrere labels hat
Verfasst: 15.04.2007 16:30
von Kaeru Gaman
die labeladresse kannst du nur in den code direkt eingeben, sie ist keine variable.
die labels werden beim kompilieren umgewandelt, im fertigen programm sind sie nicht mehr vorhanden.
du kannst also z.b. so vorgehen:
Code: Alles auswählen
Procedure DoIt( *Label )
EndProcedure
DoIt(?Label1)
DoIt(?Label2)
DataSection
Label1:
IncludeBinary "File1.dat"
Label2:
IncludeBinary "File2.dat"
EndDataSection
wenn du aber zur laufzeit einen labeltext in ein gadget oder eine console eingeben willst: geht nicht.
du könntest nur zur compilezeit eine tabelle mit den labels erstellen,
die du dann zur laufzeit anwählen kannst.
Code: Alles auswählen
Dim Labels(4)
Restore Table
For n=0 To 4
Read Labels(n)
Next
Procedure DoIt( *Label )
EndProcedure
nummer = EingabeProc() ; irgendeine möglichkeit, dass der benutzer eine zahl eingibt
DoIt( Labels(nummer) )
DataSection
Table:
Data.l ?Label1, ?Label2, ?Label3, ?Label4, ?Label5
Label1:
IncludeBinary "File1.dat"
Label2:
IncludeBinary "File2.dat"
Label3:
IncludeBinary "File3.dat"
Label4:
IncludeBinary "File4.dat"
Label5:
IncludeBinary "File5.dat"
EndDataSection