Zugriff auf Variablen von Arrays, Strukturen und Bausteinen
Zugriff auf Arrayelemente
Syntax
<Name der Arrayvariablen> [ <kommaseparierte Liste der Dimensionsindizes> ]
| Beispiel: Weitere Informationen: Bezeichner vergeben |
| Ein Index pro Dimension, so dass ein Element des Arrays identifiziert wird Beispiel: Der Index ist beginnend beim Indexminimum bis zum Indexmaximum gültig. Beispiel: |
Beispiele
Eindimensionales Array mit zehn Komponenten
// Declaration
VAR
aSample : ARRAY[0..9] OF INT;
nVar : INT;
END_VAR
// Implementation
nVar := aSample[2];
Zweidimensionales Array mit zwei mal zwei Komponenten
//Declaration
VAR
aCardGame : ARRAY[1..2, 3..4] OF INT;
nVar1 : INT;
END_VAR
//Implementation
nVar1 := aCardGame[1, 3];
Weitere Informationen: ARRAY
Zugriff auf Strukturkomponenten
Syntax
<Name der Strukturvariablen>.<Name der Komponente>
| Beispiel: Weitere Informationen: Bezeichner vergeben |
| Beispiel: |
Beispiele
// Declaration type
TYPE ST_POLYGONLINE :
STRUCT
aStart : ARRAY[1..2] OF INT := [-99, -99];
aPoint1 : ARRAY[1..2] OF INT;
aPoint2 : ARRAY[1..2] OF INT;
aPoint3 : ARRAY[1..2] OF INT;
aPoint4 : ARRAY[1..2] OF INT;
aEnd : ARRAY[1..2] OF INT := [99, 99];
END_STRUCT
END_TYPE
//Declaration structure variable
VAR
sPolygon : ST_POLYGONLINE;
nPoint : INT;
END_VAR
//Implementation
nPoint := sPolygon.aPoint1[1];
Weitere Informationen: Struktur
Zugriff auf Variablen in Programmierbausteinen
Syntax
<POU Name>.<Variablenname>
| Name einer Funktionsbausteininstanz ( Beispiel: Weitere Informationen: Bezeichner vergeben |
| Variable der POU Beispiel: |
Beispiele
FUNCTION_BLOCK FB_SAMPLE
VAR_INPUT
bStart : BOOL;
END_VAR
VAR_OUTPUT
END_VAR
VAR
nState : INT;
END_VAR
IF bStart = TRUE THEN
nState := 1;
END_IF
PROGRAM MAIN
VAR
fbSample : FB_Sample;
END_VAR
fbSample();
fbSample.bStart := TRUE;
Weitere Informationen: Objekt Funktionsbaustein, Objekt Programm
Siehe auch: