关于指针的定义

已锁定

云山雾绕

  • 帖子

    2158
  • 精华

    0
  • 被关注

    96

论坛等级:至圣

注册时间:2011-10-05

钻石 钻石 如何晋级?

关于指针的定义

6202

15

2018-12-30 13:57:07

    S7 -1500 PLC支持Pointer、Any和Variant三种类型指针,S7 - 300/400 PLC只支持前两种,S7 -1200 PLC只支持最后一种。

    (1) Pointer

    Pointer类型的参数是一个可指向特定变量的指针。它在存储器中占用6 B(48 bit),可能包含数据块编号或0(若数据块中没有存储数据)、CPU中的存储区和变量起始地址(格式为“字节.位”)等信息。

    (2) Any

    Any类型的参数指向数据区的起始位置,并指定其长度。Any指针使用存储器中的10个字节,图5-5给出了Any指针的结构。Any指针不仅包含Pointer指针所包含的内容(DB编号、存储区和数据的起始地址),还可能包含数据类型(数据区元素的数据类型)、零指针(使用零指针,可以指出缺少的值)和重复系数(系统区的元素数)等。


    (3) Variant

    Variant类型的参数是一个可以指向不同数据类型变量(而不是实例)的指针。Variant可以是一个元素数据类型的对象,例如Int或Real;也可以是一个String、DTL、Struct、数组、UDT或UDT数组。Variant指针可以识别结构,并指向各个结构元素。Variant数据类型的操作数在背景DB或L堆栈中不占用任何空间,但是将占用CPU上的存储空间。

    Variant类型的变量不是一个对象,而是对另一个对象的引用。Variant类型的各元素只能在函数的块接口中声明。因此,不能在数据块或函数块的块接口静态部分中声明,例如,因为各元素的大小未知,所引用对象的大小可以更改。

    Variant数据类型只能在块接口的形参中定义。


关于指针的定义 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-1500系列

共有10667条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
X 图片
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。