1. 1、本文档共90页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[理学]ch07

* 第*页 对错误进行处理并且从错误中恢复 1.发出错误报告 MATALB 中 error 函数可以报告错误并且中断程序运行。用户可以通过指定 error 函数参数的方式指定将要发出的错误信息。 if n1 error(‘n must be 1 or greater.’) end 当n1时在命令窗口中显示如下的信息: ??? n must be 1 or greater. * 第*页 2.识别错误发生的原因 当错误发生时,用户需要知道错误发生的位置及错误原因,以便能够正确处理错误。lasterror 函数可以返回最后发生的错误的相关信息,辅助用户识别错误。 * 第*页 3.错误重现 在一些情况下,需要重现已经抛出过的错误,以便于对错误进行分析。MATLAB 中函数 rethrow 可以重新抛出指定的错误。该函数的格式为 rethrow(err),其中输入参数 err 用于指定需要重现的错误。该语句执行后程序运行中断,将控制权转给键盘或 catch 语句的上一层模块。 rethrow 函数通常与 try-catch 语句一起使用。如: try 表达式 1 catch do_cleanup rethrow(lasterror) end * 第*页 警告处理 警告用于提示用户在程序运行中出现异常情况。与错误不同的是,警告并不中断程序的运行,而是显示警告内容并继续执行。警告通过函数 warning 发出,格式与 error 函数相同,如: warning(Input must be a string) warning(formatted_warningmsg, arg1, arg2, ...) warning(Ambiguous parameter name, %s., param) 警告处理的方式与错误处理的方式类似这里不再赘述。 * 第*页 程序设计的辅助函数 表达式与函数的评估 计时器函数 * 第*页 函数 功能 arrayfun 对数组的每个元素应用函数 builtin 以重载方式执行嵌套函数 cellfun 对单元数组的每个单元应用函数 echo 在执行中显示当前运行行 eval 执行包含 MATLAB 表达式的字符串 evalc 评估 MATLAB 表达式 evalin 在指定工作区中运行表达式 feval 函数评估 iskeyword 判断输入字符串是否为 MATLAB 关键字 isvarname 判断输入字符串是否为 MATLAB 有效变量名 pause 暂停,等待用户反应 run 运行非当前路径下的脚本 script 脚本文件描述 structfun 对结构体的每个域运行函数 symvar 判断表达式中的符号变量 tic, toc 采用计数器评估函数的运行 * 第*页 计时器函数 函数 功能 delete 删除内存中的计时器对象 disp 显示计时器对象的相关信息 get 获取计时器对象的属性 isvalid 判断计时器对象是否有效 set 设置或显示计时器对象的属性 start 开启计时器 startat 在指定时间启动计时器 stop 关闭计时器 timer 生成计时器对象 timerfind 查找计时器对象 timerfindall 查找计时器对象,包括不可见对象 wait 等待,直至计时器停止 * 第*页 调试程序 一般来说,应用程序的错误有两类,一类是语法错误,另一类是运行时的错误。 语法错误包括词法或文法的错误,例如函数名的拼写错、表达式书写错等。 程序运行时的错误是指程序的运行结果有错误,这类错误也称为程序逻辑错误。 * 第*页 调试程序 直接调试法 利用调试工具 采用命令行调试程序 采用调试界面调试程序 * 第*页 直接调试法 在程序调试时,程序运行中变量的值为一个重要的线索。因此,查看变量值为程序调试的重要线索,由于在函数调用时只返回最后的输出参数,而不返回中间变量,因此,可以选择下面的方法查看程序运行中的变量值。 (1)通过分析后,将可能出错的语句后面的分号(;)删除,将结果显示在命令窗口中,与预期值进行比较; (2)利用函数 disp 显示中间变量的值; (3)在程序中的适当位置添加 keyboard 指令。当 MATLAB 执行至此处时将暂停,等待用户反应。当程序运行至此时将暂停,在命令窗口中显示 k提示符,用户可以查看工作区中的变量,可以改变变量的值。输入 return 指定返回程序,继续运行。 (4)在调试一个单独的函数时,可以将函数改写为脚本文件,此时可以直接对输入参数赋值,然后以脚本方式运行该 M 文件,这样可以保存中间变量,在运行完成后,可以查看中间变量的值,对结果进行分析,查找错误所在。 * 第*页 采用命令行调试程序 函数

文档评论(0)

ipbohn97 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档