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:添加指针