Strukturen werden als Objekte im Object Organizer unter der Registerkarte „Datentypen“ angelegt. Sie beginnen mit den Schlüsselwörtern TYPE und STRUCT und enden mit END_STRUCT und END_TYPE.
Die Syntax für Strukturdeklarationen ist wie folgt:
TYPE <Structurename>: STRUCT <Declaration of Variables 1> . . <Declaration of Variables n> END_STRUCT END_TYPE
<Strukturname> ist ein Typ, der im gesamten Projekt erkannt wird und wie ein Standarddatentyp verwendet werden kann.
Ineinander greifende Strukturen sind zulässig. Die einzige Einschränkung ist, dass Variablen nicht an Adressen platziert werden dürfen (die AT-Deklaration ist nicht erlaubt!).
Beispiel für eine Strukturdefinition namens Polygonline:
TYPE Polygonline: STRUCT Start:ARRAY [1..2] OF INT; Point1:ARRAY [1..2] OF INT; Point2:ARRAY [1..2] OF INT; Point3:ARRAY [1..2] OF INT; Point4:ARRAY [1..2] OF INT; End:ARRAY [1..2] OF INT; END_STRUCT END_TYPE
Beispiel für die Initialisierung einer Struktur:
Poly_1:polygonline := ( Start:=3,3, Point1 =5,2, Point2:=7,3, Point3:=8,5, Point4:=5,7,
End := 3,5);
Initialisierungen mit Variablen sind nicht möglich. Ein Beispiel für die Initialisierung eines Arrays einer Struktur finden Sie unter 'Arrays'.
Zugriff auf Strukturkomponenten:
Mit der folgenden Syntax können Sie auf die Strukturkomponenten zugreifen:
<Structure_Name>.<Componentname>
Für das oben erwähnte Beispiel der Struktur 'polygonline' können Sie also über Poly_1.Start
auf die Komponente 'start' zugreifen.