技术论坛

 FC的INOUT引脚调用不同类型的区别

返回主题列表
作者 主题
周杰伦
至圣

经验值:13737
发帖数:2031
精华帖:16
楼主    2019-09-03 21:42:04
主题:FC的INOUT引脚调用不同类型的区别

虽然我写FC,FB的时候绝对不会既使用引脚变量又同时使用全局变量,但是看了别人的贴子我还是试了下。

我是想FB起始读取OUTPUT,或者INOUT,最后再赋值输出,所以不管你在FB里面如何调用全局变量,最后是以引脚的最后一次赋值为最后输出结果。

我试了下,int类型和我想的一样。

但是调用结构体的数据却出错了,是按照先后赋值顺序进行赋值的,原因在哪呢?

FC和FB测试是一样的效果,我用的是仿真测试。




工控毁我青春!
mkas
侠士

经验值:1073
发帖数:129
精华帖:2
2楼    2019-09-10 16:15:02
精华帖  主题:回复:FC的INOUT引脚调用不同类型的区别

FB:

in接口不管参数是基本数据类型还是复杂数据类型都是副本,

out同上。

inout接口基本数据类型是副本,在调用结束后刷新实参,如果是复杂数据类型,传的是指针,是直接改写。

FC:

in接口实参是基本数据类型是副本,在调用结束后刷新实参,如果是复杂数据类型,传的是指针,

out接口实参基本数据类型是副本,在调用结束后刷新实参,如果是复杂数据类型,传的是指针。

inout接口基本数据类型是副本,在调用结束后刷新实参,如果是复杂数据类型,传的是指针,是直接改写。

所以你的程序中UDT是以最后一次的赋值为准,基本数据类型都是副本,所以是以形参赋值为准。

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