CodeSys V3 flexiblen array deklarieren

Gerri

Level-1
Beiträge
822
Reaktionspunkte
37
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
gibt es dich Möglichkeit, die Anzahl von Instanzen (zB in einem Array) zum Beginn der Laufzeit zu erzeugen?
zB über eine Parameterfunktion oder dergleichen?
 
Jain.

Was geht:

Konstanten definieren. Dann das Array mit den Konstanten deklarieren. Beispiel:
Code:
VAR CONSTANT
    FIRST_IDX : INT := 0;
    LAST_IDX : INT := 10;
END_VAR


VAR
    myFlexibleArray : ARRAY[FIRST_IDX..LAST_IDX] OF STRING(80);
END_VAR

Nach dem Kompelieren/Übertragen des Programmes stehen diese Konstanten aber fest und können nicht mehr zur Laufzeit geändert werden.
Was nicht geht, ist zum Beispiel ein Array in einem FB als Eingangsvariable deklarieren und vor dem Kompelieren sagen, wie groß es sein soll. Da muss man dann Pointer verwenden.

Gruß wonderfulworld
 
Zurück
Oben