作者 | 主题 |
---|---|
周杰伦 至圣 经验值: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是以最后一次的赋值为准,基本数据类型都是副本,所以是以形参赋值为准。
好好学习,天天向上
|