QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 924|回复: 2
打印 上一主题 下一主题

程序调试的进一步说明

[复制链接]
字体大小: 正常 放大

413

主题

36

听众

1854

积分

升级  85.4%

  • TA的每日心情
    开心
    2019-9-18 21:55
  • 签到天数: 258 天

    [LV.8]以坛为家I

    社区QQ达人

    群组2015国赛冲刺

    群组2016美赛公益课程

    群组国赛讨论

    群组第三届数模基础实训

    群组Matlab讨论组

    跳转到指定楼层
    1#
    发表于 2015-9-6 22:42 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta

    3.6 程序调试的进一步说明
    在含有选择结构和循环结构的程序出错的概率要比只含简单的顺序结构的程序出错的概率大得多。在完成了程序设计的步骤之后,无论多大的一个程序,在第一次运行时都很难通过。假如我们创建了一个程序并调试它,只发现这个程序的输出是错误的。我们怎样找到这些错误并修改它呢?

    一旦程序包含了循环和选择结构,找到错语的最好的方法是应用matlab支持的符号调试器(symbolic debugger)这个调试器将会整合到matlab编辑器中。


    3.13 matlab的编辑/调试窗口

    应用这个调试器,首先应该选择“file/open”打开你在MATLAB命令窗口中要调试的程序。当一个文件被打开,编辑器就加载了这个文件,代码根据语法的不同出现不同的颜色。在这个文件中评论显示为绿色,变量和数字显示为黑色,字符串显示为红色,语言的关键字显示为蓝色。图3.13向大家展示的是含有文件calc_roots.m的编辑/调试窗口。

    当一个程序执行时,我们想知道什么事情发生了。为了达到此目的,我们可以用鼠标右击你所关心的行并选择”set/clear breakpoint”选项。当一个断点被设置后,一个红色的点将会出现在行的左边,如图3.14所示。


    3.14 这个窗口断点已设置

    一旦这些断点被设置,在命令窗口键入calc_roots将会像往常一样执行这个程序。这个程序将会运行到第一个断点并在那里停止。在调试的过程中将会有一个绿色的箭头将会出现在当前行。如图3.15所示。

    一旦到达某个断点程序员可以通过在命令窗口中键入变量名的方法检查或修改在工作区内的任一变量。当程序员对程序的这一点感到满意时,可以通过重复按F10一行一行调试,也可以F5运行到下一个断点。它总是能检测程序中的每一个断点中的任何一个变量的值。
    调试器的另处一个重要特性是可在Breakpoints菜单中找到。这个菜单包括两个项目:“stop if Error”和“stop if warning”。如果程序中发生了一个错误,这个错误导致了电脑死机或产生了错误信息,程序员可以打开这些选项,并执行这个程序。这个程序将会运行到错误或警告的断点并停在那儿,它允许程序员检查变量的每一个值,并帮助找出出错的原因。当一个错误被发现,程序员能用编辑器来更正这个MALTAB程序,并把更新的版本存到磁盘上,在调试没结束之前,它必须重复以上的动作。这个步骤将会重复下去直到这个程序没有错误出错。

    现在花一定的时间来熟悉这个调试器——这是值得的。


    3.15 在调试的过程中一个绿色的小箭头将会出现在当前行的左侧




    图3.13 matlab的编辑调试窗口.jpg (212.71 KB, 下载次数: 135)

    图3.13 matlab的编辑调试窗口.jpg

    图3.14 这个窗口断点已设置.jpg (211.8 KB, 下载次数: 124)

    图3.14 这个窗口断点已设置.jpg

    图3.15 在调试的过程中一个绿色的小箭头将会出现在当前行的左侧.jpg (186.19 KB, 下载次数: 128)

    图3.15 在调试的过程中一个绿色的小箭头将会出现在当前行的左侧.jpg

    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
    数学中国版主团队!

    413

    主题

    36

    听众

    1854

    积分

    升级  85.4%

  • TA的每日心情
    开心
    2019-9-18 21:55
  • 签到天数: 258 天

    [LV.8]以坛为家I

    社区QQ达人

    群组2015国赛冲刺

    群组2016美赛公益课程

    群组国赛讨论

    群组第三届数模基础实训

    群组Matlab讨论组

    回复

    使用道具 举报

    0

    主题

    11

    听众

    41

    积分

    升级  37.89%

  • TA的每日心情
    奋斗
    2017-1-19 21:59
  • 签到天数: 16 天

    [LV.4]偶尔看看III

    社区QQ达人

    回复

    使用道具 举报

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

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2025-5-21 07:18 , Processed in 0.391279 second(s), 63 queries .

    回顶部