回复:块多次调用,返回值互相干挠

龍族

  • 帖子

    582
  • 精华

    2
  • 被关注

    15

论坛等级:侠士

注册时间:2004-09-16

普通 普通 如何晋级?

发布于 2018-09-04 10:16:17

27楼

展开查看
以下是引用芳季在2018-09-02 08:58:34的发言 >24楼

不会。你就当做这个L是一片全局的地址,但是每个子程序都用。那你清零是没用的。然而要给一个有用的值才是正路。所以是先赋值再使用。用前从数据区复制出来,用完移到数据区保存。这个动作是必然的。300只是系统帮你选择了适当的空间装载临时变量,而30就是系统帮你选择了适当的全局空间做临时变量。其实同一个功能的实现都是要占用等量的空间的。

星三角启动子程序调用100次,就必然出现

100个启动计时器当前值的数据空间。

100个启动计时器设定值的数据空间。

100个启动中布尔量。

100个启动完成布尔量。

等等。

这些变量始终要地方存放的,但是不是临时区。那么是哪里呢?系统能帮你做你就省了做,不能省的就要自己做。

以下是引用龍族在2018-09-02 02:55:34的发言 >:@芳季  大神,如果...

引用详细内容:

@芳季  大神,如果我在子程序的开头,加上清零语句:

L 0

T LB  0

T LB   x

将所有用到的L 区清零,会不会解决这个问题?


芳季大神一席话犹如醍醐灌顶!

这次明白了,用之前先赋值,出结果直接赋到相应的区域保存!子程序可以无限次使用了,感谢啊!

心若止水,静思程序!
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200 SMART

共有9453条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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