Accesso alle variabili in array, strutture e blocchi
Accesso agli elementi dell'array
Sintassi:
<nome della variabile di array> [<elenco separato da virgole di indici di dimensione>]
| <nome della variabile di array> | Nome della variabile di matrice Esempio:  Per ulteriori informazioni, vedere: Assegna identificatore | 
| <elenco separato da virgole di indici di dimensione> | Un indice per dimensione, in modo che venga identificato un elemento dell'array Esempio:  L'indice รจ valido dal minimo dell'indice al massimo dell'indice. Esempio:  | 
Array unidimensionale con 10 componenti
//Declaration
VAR
    aiCounter : ARRAY[0..9] OF INT;
    iLocalVariable : INT;
END_VAR
// Implementation
iLocalVariable := aiCounter[2]; Array bidimensionale con 2 volte 2 componenti
//Declaration
VAR
    aiCardGame : ARRAY[1..2, 3..4] OF INT;
    iLocal_1 : INT;
END_VAR
//Implementation
iLocal_1 := aiCardGame[1, 3];Per ulteriori informazioni, vedere: ARRAY OF
Accesso ai componenti della struttura
Sintassi:
<nome della variabile di struttura> . <nome del componente>
| <nome della variabile di struttura> | Esempio:  Per ulteriori informazioni, vedere: Assegna identificatore | 
| <nome del componente> | Esempio:  | 
//Declaration type
TYPE S_POLYGONLINE :
STRUCT
    aiStart : ARRAY[1..2] OF INT := [-99, -99];
    aiPoint1 : ARRAY[1..2] OF INT;
    aiPoint2 : ARRAY[1..2] OF INT;
    aiPoint3 : ARRAY[1..2] OF INT;
    aiPoint4 : ARRAY[1..2] OF INT;
    aiEnd : ARRAY[1..2] OF INT := [99, 99];
END_STRUCT
END_TYPE
//Declaration structure variable
VAR
    sPolygon : S_POLYGONLINE;
    iPoint : INT;
END_VAR
//Implementation
iPoint := sPolygon.aiPoint1[1];
Per ulteriori informazioni, vedere: STRUCT
Accesso alle variabili nelle POU
Sintassi:
<Nome POU> . <nome variabile>
| <Nome POU> | Nome di un'istanza di blocco funzione ( Esempio:  Per ulteriori informazioni, vedere: Assegna identificatore | 
| <nome variabile> | Variabile della POU Esempio:  | 
FUNCTION_BLOCK FB_Controller
VAR_INPUT
    xStart : BOOL;
END_VAR
VAR_OUTPUT
END_VAR
VAR
    ControlDriveA : S_CONTROL;
END_VAR
IF xStart = TRUE THEN
    //Symbolic bit access
    ControlDriveA.bitEnableOperation := TRUE;
END_IF
PROGRAM PLC_PRG
    fbController : FB_Controller;
END_VAR
fbController();
fbController.xStart := TRUE;