La copia di una variabile array in un’altra funziona mentre se eseguo il confronto tra due variabili array ho errore in compilazione.
VAR
ChkOk : BOOL;
MyArray1 : ARRAY[0..7] OF BYTE := [1, 2, 3, 4, 5, 6 ,7, 8];
MyArray2 : ARRAY[0..7] OF BYTE;
END_VAR
MyArray2:=MyArray1;
ChkOk:=TO_BOOL(MyArray1 = MyArray2);
TestArray(3) - error A4136: MyArray1 => Missing index(es)
TestArray(3) - error A4136: MyArray2 => Missing index(es)
Ho provato ad eseguire la stessa operazione su strutture dati ed anche in questo caso ho un errore in compilazione.
VAR
ChkOk : BOOL;
MyStruct1 : MYSTRUCT := (MyVar1:=TRUE, MyVar2:=FALSE, MyVar3:=TRUE);
MyStruct2 : MYSTRUCT;
END_VAR
MyStruct2:=MyStruct1;
ChkOk:=TO_BOOL(MyStruct1 = MyStruct2);
TestStruct(3) - error G0008: LD => Invalid access to variable
Ho comesso qualche errore nei miei programmi oppure c’è un problema nella comparazione.