Codesys或TwinCAT采用指针获取输入输出M存储区或其它连续存储区变量给数组赋值
VAR
a0 AT%M*:REAL:=0.0;
a1 AT%M*:REAL:=0.1;
a2 AT%M*:REAL:=0.2;
a3 AT%M*:REAL:=0.3;
a4 AT%M*:REAL:=0.4;
i:int:=0;
ar:array[0..4] of real;
b:bool;
pr:pointer to real;
r_trig1:R_TRIG;
END_VAR
r_trig1(clk:=b);
if r_trig1.q then
b:=0;
for i:=0 to 4 do
pr:=adr(a0)+sizeof(a0)*i;
ar[i]:=pr^;
end_for
end_if;