SA0064:ポインタの追加
ポインタの追加を決定します。
位置揃え: で CODESYS、ポインター演算は一般に許可されており、適切に使用することもできます。ただし、これはエラーの原因でもあります。したがって、一般にポインター演算を禁止するプログラミング規則が存在します。このテストでは、そのような要件を確認できます。
重要性:中
例 75. 例
PROGRAM PLC_PRG
VAR
iTest : INT;
ariTest : ARRAY[0..10] OF INT;
{attribute 'analysis':='-111'}
piTest : POINTER TO INT;
i : INT;
END_VAR
piTest := ADR(ariTest[0]); // OK
piTest^ := 0;
piTest := ADR(ariTest) + SIZEOF(INT); // SA0064
piTest^ := 1;
piTest := ADR(ariTest) + 6; // SA0064
piTest^ := 3;
piTest := ADR(ariTest[10]);
FOR i:=0 TO 10 DO
piTest^ := i;
piTest := piTest + 2; // SA0064
END_FORでの出力 メッセージ ビュー:
SA0064: ポインタの追加