关于FC功能,本人有一事不明,求解

FC按常理来说就是我们常用的函数,函数的特点是多个输入值,一个返回值,函数名即返回值的表达式。
但我发现在STEP7里的FC却可以输出OUT接口变量?按正常逻辑理解,它最多也就一个RET_VAL变量即可,可实际却不是这样,那么这原理不就与函数的基本原理相悖?

最佳答案

你的理解 是按照面向过程的高级语言(比如C)来看待SIEMENS的东西了。
 
你要知道参数的传送机制 主要有2种,1:按值传递,2:按引用传递。C语言里大多数是按值传递的,SIEMENS STEP7主要是按引用传递的,所以 你可以把OUT,IN_OUT等接口看着是按引用传递的形参,因为通过FC内部计算,可以改变连接到OUT接口上的实参变量值。

学习STEP7,大家可能 会和自己熟悉的编程语言进行类比,这个是应该的,但也不能死搬硬套。要知道 在OOP编程的语言里(比如VB)它是没有 函数的概念的,在OOP编程里面,叫方法和过程,比如SUB过程就和你所想象的FC是一样的,但是VB里还有一个FUNCTION 过程,它就是和FC所类似。

提问者对于答案的评价:
3Q!!

专家置评

已阅,最佳答案正确。

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc228831.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2018年12月1日 上午3:29
下一篇 2018年12月1日 上午3:29

相关推荐