第八章节程序设计资料.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第八章节程序设计资料

主要内容 M文本编辑器 M文件 MATLAB的数据类型 MATLAB控制流 程序调试 函数句柄 一、M文件 M脚本(命令)文件 M函数文件 局部变量和全局变量 M文件的一般结构 变量的检测传递和限权使用函数 1、M脚本(命令)文件(Script) 2、M函数文件( Function) MATLAB允许使用比“标称数目”较少的输入输出宗量,实现对函数的调用。 函数空间随具体M函数文件的被调用而产生,随调用结束而删除。函数空间是相对独立的、临时的。在MATLAB整个运行期间,可以产生任意多个临时函数空间。 假如在函数文件中,发生对某脚本文件的调用,那么该脚本文件运行产生的所有变量都存放于该函数空间之中,而不是存放在基本空间。 3、局部变量和全局变量 局部(Local)变量 它存在于函数空间内部的中间变量,产生于该函数的运行过程中,其影响范围也仅限于该函数本身。 3、局部变量和全局变量 全局(Global)变量 通过global指令,MATLAB也允许几个不同的函数空间以及基本空间共享一个变量。这种被共享的变量称为全局变量。每个希望共享全局变量的函数或MATLAB基本工作空间,必须逐个用global对具体变量加以专门定义。没采用global定义的函数或基本空间,将无权享用全局变量。 如果某个函数的运作使全局变量的内容发生了变化,那么其他函数空间以及基本工作空间中的同名变量也就随之变化。 除非与全局变量联系的所有工作空间都被删除,否则全局变量依然存在。 4、M文件的一般结构 由于从结构上看,脚本文件只是比函数文件少一个“函数申明行”。 典型M函数文件的结构: 函数申明(定义)行(Function declaration line): H1行(The first help text line): 在线帮助文本(Help text)区: 编写和修改记录: 函数体(Function body): 函数申明(定义)行 (Function declaration line)    位于函数文件的首行,以MATLAB关键字function开头,函数名以及函数的输入输出宗量都在这一行定义。 H1行(The first help text line):    紧随函数申明行之后以%开头的第一注释行。按MATLAB自身文件的规则,H1行包含:大写体的函数文件名;运用关键词简要描述的函数功能。该H1行供lookfor关键词查询和help在线帮助使用。 在线帮助文本(Help text)区: 编写和修改记录 函数体(Function body): 5、变量的检测传递和限权使用函数 输入输出宗量检测指令 跨空间变量传递 子函数和私用函数 输入输出宗量检测指令 nargin 在函数体内,用于获取实际输入宗量 nargout 在函数体内,用于获取实际输出宗量 nargin(‘fun’) 获取‘fun’指定函数的标称输入宗量数 nargout(‘fun’) 获取‘fun’指定函数的标称输出宗量数 inputname(n) 在函数体内使用,给出第n个输入宗          量的实际调用变量名 跨空间变量传递 全局变量 函数输入参数 跨空间计算串表达式的值 跨空间赋值 跨空间计算串表达式的值 evalin(‘workspace’,’expression’)    跨空间计算串表达式值 ‘workspace’可取两个值:‘base’和‘caller’ Base:表示计算eval(‘expression’)时,将从基本工作空间获得变量值。 Caller:表示计算eval(‘expression’)时,将从主调函数工作空间获得变量值。主调函数是相对被调函数而言的。这里,被调函数是指evalin所在的函数。 evalin(‘workspace’,’expression1’, ’expression2’)   跨空间计算替代串表达式值 ‘workspace’可取两个值:‘base’和‘caller’ 该调用格式的执行机理: 先从所在函数空间获得变量值用eval(‘expression1’)计算原串表达式;若该计算失败,则在从‘workspace’ 指定的(基本或主调函数)工作空间获取变量值,再通过eval(‘expression2’)计算替代串表达式 。 跨空间赋值 assignin(‘workspace’,’VN’,x)    把当前工作空间内变量x的值赋给‘workspace’指定空间名的VN变量。 子函数 MATLAB允许一个M函数文件包含多个函数的代码。其中,第一个出现的函数称为主函数(Primary function),该文件中的其他函数称为子函数(Subfunction)。保存时所用的函数名与主函数定义名相同。外部程序只能对主函数进行调用

文档评论(0)

karin + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档