技术论坛

 子程序传递多个BOOL变量如何优化

返回主题列表
作者 主题
CJowo
新手

经验值:27
发帖数:1
精华帖:0
楼主    2022-06-24 16:08:19
主题:子程序传递多个BOOL变量如何优化

子程序变量输入输出上限为16个,一个子程序需要传入超过16个BOOL类型变量,使用DWORD类型可以占用一个IN变量传入16位BOOL类型变量,如何通过符号而不是L0.0这样的地址来访问呢?不管是调试还是后期修改,使用绝对地址都很不直观而且容易造成潜在的错误。

IN变量还好说,但是OUT变量地址在IN变量的后面,如果使用DWORD输出大量BOOL类型变量,后期修改子程序时又添加了IN变量,就会造成这个DWORD变量地址改变,如果使用L4.0这样的绝对地址,就需要把子程序中所有使用到绝对地址的地方都改变。有没有什么好的解决办法?

yanxiao
版主

经验值:25980
发帖数:11805
精华帖:43
1楼    2022-06-24 16:13:52
精华帖  主题:回复:子程序传递多个BOOL变量如何优化

全符号操作不行,半符号将就吧。

假如参数不会侵犯到 LB40后面的空间,定义L40.0、L40.1。。。。为符号访问,把IN传入DWOD传到LD40,如果是IN/OUT或者OUT,完了再把LD40传给参数DWORD。

这个LD40,不能定义成符号,无伤,即使有变化,程序修改量已降至最小。

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