Hallo,

wie kann man in RB eine Funktion mit Declare definieren, wie eine
variable Argumentenliste (so wie z.B. printf) enthält ?

Soweit ich weiß legt der Compiler beim Aufruf die Anzahl der Argumente
auf den Stack und dahinter die Argumente.
Meinst Du mit "Stack" dabei den speicherbereich, den ich mittels Ptr an die Funktion übergeben ?
offset type  what
00     long  NumberOfArgs
04     any   Arg1
xx     any   Arg2

Hmmm, das wird aber doch schwierig, denn woher soll er wissen was für Datentypen ihn da erwarten und die richtige Länge ermitteln? Ich hätte eher gedacht es sind Zeiger, die haben immer die gleiche Länge, also dann evtl. so:
offset type  what
00     long  NumberOfArgs
04     long  * Arg1
08     long  * Arg2

Oder das es einfach so ausschaut:
offset type  what
00     long  *Arg1
04     long  *Arg2
...
xx     long  *NULL

Also einfach mit einem NULL-Zeiger endet....


Mit freundlichen Grüssen,

Oliver Geisen
_____________________________
Systemadministrator
Kreisboten Verlag Mühlfellner KG
82362 Weilheim i. Ob.
Tel. 0881/686-904
Fax 0881/686-74


Antwort per Email an