ADR

这个 地址操作不是由标准的 IEC 61131-3 提供。

ADR 以 DWORD 格式返回一个引用的 地址。这个地址可以用于修改函数的操作指针或者可以用于工程内的 指针操作。

提示!

不同于CoDeSys V2.3现在 ADR-操作可以用于函数名,程序名,功能块名以及方法名操作,用于替代 INDEXOF 操作。参阅文档: 函数指针。注意函数指针可以用于扩展函数库,但是不能在 CODESYS 中调用函数指针!为了实现系统调用 (运行系统)相关的 对象属性 (类别 ‘编译’)必须设置在函数对象中。

ST 示例:

dwVar:=ADR(bVAR);

IL 示例:

小心!

如果 在线变换激活,变量可能会被转移到内存中的另一个区域。 (如果复制必须,那么将会在在线改变时有一个标志)。 POINTER 变量将会被指向有效的内存。如果要避免麻烦,确保指针在一个周期内部保存,并且在每次循环中得到一个新值。

POINTER TO 函数以及方法变量应该不能反悔这个函数的调用处理或者全局变量处理。