- 1、本文档共64页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
复杂问题的调试 当M文件较为复杂,递归调用或者多次嵌套(即调用其它M文件函数,被调用M文件函数又调用其它M文件函数,等等)时,更好的方法是利用编辑调试工具,在M文件运行之前在文件内设置断点,然后运行程序,当程序运行到断点之后,调试按钮被激活,可以选择Step/Step in/Step out/Continue/Exit debug mode等方式,此时还可以在工作空间中查看各变量值的的变化,并据此对程序进行跟踪 复杂问题的调试 MATLAB还提供了多种调试用的函数,例如dbclear(清除断点)等函数,这些调试函数不要求将有问题的M文件进行编辑。使得M文件的调试手段更加全面和丰富,有关进一步的信息,以及它们的使用实例可参阅MATLAB帮助 * try/catch结构 例子 对于输入一个矩阵A,对其求逆过程中可能遇到的错误进行捕捉的语句段如下: A=input(Please input a square matrix: ); try inv_A=inv(A) disp(successful inverse operation); catch disp(The input is not invalid); end try/catch结构 例子 当我们输入矩阵A=[1 2;3 4],因为A为方阵且非奇异,故可对其进行求逆,try语句段中无错误,故执行完try之后跳过catch语句段,程序结束。但是当我们输入矩阵A=[1 2 3;4 5 6],由于A非方阵,故不存在逆矩阵,try语句段出错,于是程序终止对try语句段的执行,跳转执行catch语句段,打印错误信息。 其他流程控制语句 break语句和continue语句 break语句和continue语句用于循环中的流程控制。一般可以和if语句配合使用。 break语句用于终止循环的执行,当在循环体内执行到该语句时,程序将跳出循环,继续执行循环语句的下一语句。continue语句控制跳过循环体中的某些语句。当在循环体内执行到该语句时,程序将跳过循环体中所有剩下的语句,继续下一次循环 如果break或continue语句出现在循环嵌套的内部,那么break语句和continue语句将会在包含它的最内部的循环起作用 其他流程控制语句 break语句和continue语句 例如:求[200,500]之间第一个能被53整除的整数,程序如下: for i=200:500 if rem(i,53)~=0 continue end break end i i = 212 return语句 当用户需要在文件中进行终止操作时,可以使用return命令,执行return命令后,进程将返回调用函数或者键盘。运用return命令可以提前结束程序的运行。return和break的区别在于return一般用于函数或者文件的结束,而break用于循环的终止 M脚本文件和M函数文件 为什么要用M脚本和M函数 在前面章节中我们解决问题的方法都是在MATLAB的命令窗口直接输入相关的命令行或者语句段,这种方法适用于一些简单问题的解决,但是当我们遇到更为复杂的综合性问题时则需要用到程序编辑与调试的环境,在MATLAB中我们称之为M文件编辑器。利用它我们可以实现对MATLAB命令行语句段的批处理,或者对M文件进行保存和调用。 M脚本文件和M函数文件 为什么要用M脚本和M函数 MATLAB 程序大致分为两类:M 脚本 (M-Script) 和 M 函数 (M-function), 它们均是普通的 ASCII 码构成的文件,后缀均为.m。 M文件的命名规则 文件名必须以字母开头,而后可以是英文、数字和下划线的组合,文件名首字符不能是数字或下划线,M文件名中不能含有空格 M文件名不能与MATLAB内部函数名相同,因而建议对M文件的命名尽量不用简单的英文单词, 虽然MATLAB对M文件名是大小写敏感的,但Windows的文件名是不区分大小写的,为了文件的保存方便,实现不同平台之间的通用性,建议M文件名尽量只使用小写。 M文件编辑器 什么是M文件编辑器 M文件编辑器是MATLAB中集成编辑和调试的环境,用户可以通过MATLAB中的M文件编辑器编写用户的M文件,同时也可以使用编辑器打开和修改M文件,观察变量值、调试程序等。M文件编辑器的界面如图所示 M文件编辑器 启动M文件编辑器的方法 在命令窗口输入edit命令可进入M文件编辑器,此时MATLAB将建立一个空文件,如果需要查看、编辑或者修改已经存在的M文件,例如文件名为test.m,则用户只需在命令窗口
文档评论(0)