Call-By-Reference in FunctionBlock

moppi

Level-1
Beiträge
6
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

ich möchte einem Function_Block ein Array variabler Länge übergeben:
Code:
FUNCTION_BLOCK test
VAR_IN_OUT
  Array: Array[0..x] OF BYTE;
END_VAR

Funktioniert natürlich nicht, da x eine Konstante sein muss.
Kann man das irgendwie realisieren und wenn ja, wie?


Grüße

Moppi
 
Hallo,

solche Parameterübergaben werden meistens mit einem Pointer auf das erste Array-Element und der Gesamtlänge des Arrays gemacht.
FUNCTION_BLOCK Test
VAR_INPUT
pbFirstElem : POINTER TO BYTE;
wLen : WORD;
END_VAR
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
dafür ist EIGENTLICH der ANY-Pointer gemacht worden. In den kann ich die Datenstruktur übergeben. Sie ist dann allerdings ein Block dessen Aufbau du kennen mußt. Symbolisch kannst du dann nicht mehr damit arbeiten ...

Gruß
Larry
 
Zurück
Oben