按照同一级的子程序SBR_0和SBR_1,POU调用后面的SBR_1会覆盖前面调用的子程序SBR_0的TEMP区,但这个例子没有覆盖,还是正常输出的哦。为啥?
图片说明:
最佳答案
执行按照顺序执行,先执行第一个子程序,执行后对应的temp被释放,但是值是被传出的全局变量保存。这个过程和C语言的子程序执行过程中传递形参和实参以及全局变量和局部变量的过程一样。咱们多交流、多探讨。
提问者对于答案的评价:
(*^__^*) 嘻嘻……
专家置评
1、同一嵌套层级的子程序确实是占用的同样临时变量区域
2、临时变量保证先赋值后使用
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc145743.html