回复:在FC功能里in和out及in_out的用法及功能

Letham

西门子1847工业学习平台

  • 帖子

    2023
  • 精华

    43
  • 被关注

    360

论坛等级:至圣

注册时间:2006-04-15

钻石 钻石 如何晋级?

发布于 2017-07-25 19:59:01

1楼

首先,你要理解Step7里的程序调用,涉及到参数的传递,IN,IN_OUT,OUT都是形式参数 简称形参,在调用FC的时候,你在这些IN,IN_OUT等赋的参数就是实际参数,简称实参。

实参到形参的传递过程 有2种,按值调用和按引用调用(可以百度下 )

IN,输入参数,如果是简单数据类型,那么它就是按值调用(fc内部只能引用实参的值,而不能改变实参的值)的,可以简单理解成只读的,当然如果是复杂数据类型,则是按引用调用的(以指针方式传递参数),可以在FC内部改变实参的值。


IN_OUT 就是输入输出参数,可以理解成你说的同时具有IN,和out的功能。就是在FC内部可以 读取到实参的值,同时也可以通过改变形参的值并返回给实参。如果是复杂数据类型,那么in_out也是以指针形式传递参数的。


OUT输出参数,将形参的值复制到实参里。(注意:使用此类型一到要在每个fc调用周期,程序要对OUT接口参数进行赋值,不然会出现你想象不到的错误,这也是fc和fb的区别,FB有自己的存储空间,FC没有完全依靠实参)



人生就像一场旅行!
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54617条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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