吾爱光设

会员须知
会员须知
实用帮助
实用帮助
查看: 6484|回复: 10

[求助] [已解决]CODEV宏编写如何debug

[复制链接]
  • TA的每日心情
    郁闷
    2024-10-30 22:25
  • 签到天数: 826 天

    [LV.10]以坛为家III

    23

    主题

    159

    回帖

    8

    积分

    小白

    积分
    8
    发表于 2022-1-5 20:14 | 显示全部楼层 |阅读模式
    各位好!学习CODEV宏语言过程中,遇到了返回值有问题的情况,想像一些语言一样用打印语句来看一下运行过程中变量的变化结果,尝试使用WRI命令,但是放在函数中CV会报错。想向大家请教一下在写宏的时候有什么调试的小技巧嘛?
    谢谢大家~~


    这个是我用来试验的例子,返回值是0

    FCT @TEST(NUM ^SUR)

    LCL NUM ^DAO_AXIS ^RESULT
    LCL        NUM ^OUTPUT(5)

    ^DAO_AXIS = SDERIVF(^SUR,1,0,0.001,^OUTPUT)

    ^RESULT = ^OUTPUT(3)

    END FCT ^RESULT


    最佳答案
    2022-1-5 20:45
    CV里   =   表示等于,  ==  表示赋值
    发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
    回复

    使用道具 举报

  • TA的每日心情
    无聊
    2024-10-23 19:52
  • 签到天数: 352 天

    [LV.8]以坛为家I

    16

    主题

    617

    回帖

    58

    积分

    版主

    积分
    58
    发表于 2022-1-7 08:45 | 显示全部楼层
    秋刀鱼的滋味 发表于 2022-1-6 09:12
    感谢感谢,换用==后,正常跑起来了,输出数组的大小的确是6或者更大,我看说明书是5个参数以为是数组大小 ...

    你可以写一个常规版本的宏运行,随便狙击一个点的函数值,那样能用WRI,最后输出没问题再打包成FCT。那个运行变量确实没啥用好像,但是又必须照着他的格式来



    评分

    参与人数 1金币 +2 收起 理由
    + 2
    很想两个最佳答案,版主大大委屈一下,给你.

    查看全部评分

    发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
    回复

    使用道具 举报

  • TA的每日心情
    难过
    2024-10-7 11:58
  • 签到天数: 957 天

    [LV.10]以坛为家III

    35

    主题

    554

    回帖

    92

    积分

    入门

    积分
    92
    发表于 2022-1-5 20:45 | 显示全部楼层    本楼为最佳答案   
    CV里   =   表示等于,  ==  表示赋值
    发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
    回复

    使用道具 举报

  • TA的每日心情
    无聊
    2024-10-23 19:52
  • 签到天数: 352 天

    [LV.8]以坛为家I

    16

    主题

    617

    回帖

    58

    积分

    版主

    积分
    58
    发表于 2022-1-5 20:46 | 显示全部楼层
    FCT函数宏不让调用WRI好像。
    codeV的运算符比较蛋疼,赋值要用==,一个等号在codeV反而是判断。
    另外^output数组长度应该是6
    发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
    回复

    使用道具 举报

  • TA的每日心情
    郁闷
    2024-10-30 22:25
  • 签到天数: 826 天

    [LV.10]以坛为家III

    23

    主题

    159

    回帖

    8

    积分

    小白

    积分
    8
     楼主| 发表于 2022-1-6 08:50 | 显示全部楼层
    佛跳墙 发表于 2022-1-5 20:45
    CV里   =   表示等于,  ==  表示赋值

    啊,感谢感谢,这么简单的都搞不清楚,太菜了,惭愧
    发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
    回复

    使用道具 举报

  • TA的每日心情
    郁闷
    2024-10-30 22:25
  • 签到天数: 826 天

    [LV.10]以坛为家III

    23

    主题

    159

    回帖

    8

    积分

    小白

    积分
    8
     楼主| 发表于 2022-1-6 09:12 | 显示全部楼层
    楚静竹 发表于 2022-1-5 20:46
    FCT函数宏不让调用WRI好像。
    codeV的运算符比较蛋疼,赋值要用==,一个等号在codeV反而是判断。
    另外^out ...

    感谢感谢,换用==后,正常跑起来了,输出数组的大小的确是6或者更大,我看说明书是5个参数以为是数组大小搞混了

    所以没有啥办法可以在debug时后打印变量值吗?那要是写长了,然后出错了,错都不知道错哪了,太恐怖了

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?注册

    ×
    发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
    回复

    使用道具 举报

  • TA的每日心情
    郁闷
    2024-10-30 22:25
  • 签到天数: 826 天

    [LV.10]以坛为家III

    23

    主题

    159

    回帖

    8

    积分

    小白

    积分
    8
     楼主| 发表于 2022-1-6 09:45 | 显示全部楼层
    本帖最后由 秋刀鱼的滋味 于 2022-1-6 09:47 编辑

    我当初做这个TEST就是想试一试函数里有输出数组的时候,能不能直接就标定我要输出的的是哪个数组元素。
    就是像下面这样,然后会报错。

    那么问题就是使用的时候还需要把它赋值给一个变量,这个有啥意义吗?这个使用函数的时候的赋值(下面的第一行),后面这个变量没有用武之地...而是直接调用数组,就感觉很迷。。。


    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?注册

    ×
    发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
    回复

    使用道具 举报

  • TA的每日心情
    难过
    2024-10-7 11:58
  • 签到天数: 957 天

    [LV.10]以坛为家III

    35

    主题

    554

    回帖

    92

    积分

    入门

    积分
    92
    发表于 2022-1-6 13:38 | 显示全部楼层
    本帖最后由 佛跳墙 于 2022-1-6 13:51 编辑
    秋刀鱼的滋味 发表于 2022-1-6 09:45
    我当初做这个TEST就是想试一试函数里有输出数组的时候,能不能直接就标定我要输出的的是哪个数组元素。
    就 ...

    猜一个原因,sderivf属于macro,所以需要写FCT,有些命令属于function,所以可以直接调用。
    你可以搜几个macro和function验证下
    该会员没有填写今日想说内容.
    回复

    使用道具 举报

  • TA的每日心情
    郁闷
    2024-10-30 22:25
  • 签到天数: 826 天

    [LV.10]以坛为家III

    23

    主题

    159

    回帖

    8

    积分

    小白

    积分
    8
     楼主| 发表于 2022-1-7 13:30 | 显示全部楼层
    佛跳墙 发表于 2022-1-6 13:38
    猜一个原因,sderivf属于macro,所以需要写FCT,有些命令属于function,所以可以直接调用。
    你可以搜几 ...

    又仔细看了一下说明书,这个函数的返回值就是0或者1,表示它是否正确运算。。。。其实感觉也挺鸡肋的,不能运算不直接就错了嘛。。。。。。

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?注册

    ×
    发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
    回复

    使用道具 举报

  • TA的每日心情
    郁闷
    2024-10-30 22:25
  • 签到天数: 826 天

    [LV.10]以坛为家III

    23

    主题

    159

    回帖

    8

    积分

    小白

    积分
    8
     楼主| 发表于 2022-1-7 13:31 | 显示全部楼层
    楚静竹 发表于 2022-1-7 08:45
    你可以写一个常规版本的宏运行,随便狙击一个点的函数值,那样能用WRI,最后输出没问题再打包成FCT。那个 ...

    打印调试方法已get,非常感谢!
    发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    联系我们|本论坛只支持PC端注册|手机版|小黑屋|吾爱光设 ( 粤ICP备15067533号 )

    GMT+8, 2024-11-6 11:28 , Processed in 0.171875 second(s), 27 queries .

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

    快速回复 返回顶部 返回列表