第八章程序设计.ppt
《第八章程序设计.ppt》由会员分享,可在线阅读,更多相关《第八章程序设计.ppt(47页珍藏版)》请在优知文库上搜索。
1、第八章第八章 M文件程序设计基础文件程序设计基础M文本编辑器文本编辑器M文件文件MATLAB的数据类型的数据类型MATLAB控制流控制流程序调试程序调试函数句柄函数句柄一、一、M文件文件M脚本(命令)文件脚本(命令)文件M函数文件函数文件局部变量和全局变量局部变量和全局变量M文件的一般结构文件的一般结构变量的检测传递和限权使用函数变量的检测传递和限权使用函数1、M脚本(命令)文件(脚本(命令)文件(Script)“脚本脚本”本身反映这样一个事实:本身反映这样一个事实:MATLAB只是只是按文件所写的指令执行。按文件所写的指令执行。M脚本(命令)文件的构成较简单,其脚本(命令)文件的构成较简单,
2、其特点特点是:是:n它只是一串按用户意图排列而成的(包括控制流向指它只是一串按用户意图排列而成的(包括控制流向指令在内的)令在内的)MATLAB指令集。指令集。n脚本文件运行后,所产生的所有变量都驻留在脚本文件运行后,所产生的所有变量都驻留在MATLAB基本工作空间基本工作空间(Base workspace)中。只要不中。只要不使用使用clear指令加以清除,且指令加以清除,且MATLAB指令窗不关闭,指令窗不关闭,这些变量将一直保存在基本工作空间中。基本工作空这些变量将一直保存在基本工作空间中。基本工作空间随间随MATLAB的启动而产生;只有关闭的启动而产生;只有关闭MATLAB时,时,该基
3、本空间才被删除。该基本空间才被删除。2、M函数文件(函数文件( Function)与脚本(命令)文件不同,函数文件与脚本(命令)文件不同,函数文件(Function file)犹如一个犹如一个“黑箱黑箱”。从外界只能看到传给。从外界只能看到传给它的输入量和送出来的计算结果,而内部运作它的输入量和送出来的计算结果,而内部运作是藏而不见的。是藏而不见的。函数文件的函数文件的特点特点:从形式上看,与脚本文件不同,函数文件的第一行总是以从形式上看,与脚本文件不同,函数文件的第一行总是以“function”引导的引导的“函数申明行函数申明行”(Function declaration line)。该行还
4、罗列出函数。该行还罗列出函数与外界联系的全部与外界联系的全部“标称标称”输入输出宗量。但对输入输出宗量。但对“输入输出宗量输入输出宗量”的的标称数目并没有限制,即可以完全没有输入输出宗量,也可以是任意标称数目并没有限制,即可以完全没有输入输出宗量,也可以是任意数目。数目。MATLAB允许使用比允许使用比“标称数目标称数目”较少的输入输出宗量,实现对函数较少的输入输出宗量,实现对函数的调用。的调用。从运行上看,与脚本文件运行不同,每当函数文件运行,从运行上看,与脚本文件运行不同,每当函数文件运行,MATLAB就就会专门为它开辟一个临时工作空间,称之谓会专门为它开辟一个临时工作空间,称之谓函数工作
5、空间函数工作空间(Function workspace)。所有中间变量都存放在函数工作空间中。当执行完文件。所有中间变量都存放在函数工作空间中。当执行完文件最后一条指令或遇到最后一条指令或遇到return时,就结束该函数文件的运行,同时该临时,就结束该函数文件的运行,同时该临时函数空间及其所有的中间变量就立即被清除。时函数空间及其所有的中间变量就立即被清除。函数空间随具体函数空间随具体M函数文件的被调用而产生,随调用结束而删除。函函数文件的被调用而产生,随调用结束而删除。函数空间是数空间是相对独立的相对独立的、临时的临时的。在。在MATLAB整个运行期间,可以产生整个运行期间,可以产生任意多个
6、临时函数空间。任意多个临时函数空间。假如在函数文件中,发生对某脚本文件的调用,那么该脚本文件运行假如在函数文件中,发生对某脚本文件的调用,那么该脚本文件运行产生的所有变量都存放于该函数空间之中,而不是存放在基本空间。产生的所有变量都存放于该函数空间之中,而不是存放在基本空间。3、局部变量和全局变量、局部变量和全局变量局部(局部(Local)变量)变量n它存在于函数空间内部的中间变量,产生于该函数的运行过程它存在于函数空间内部的中间变量,产生于该函数的运行过程中,其影响范围也仅限于该函数本身。中,其影响范围也仅限于该函数本身。全局(全局(Global)变量)变量n通过通过global指令,指令,
7、MATLAB也允许几个不同的函数空间以及基也允许几个不同的函数空间以及基本空间共享一个变量。这种被共享的变量称为全局变量。每个本空间共享一个变量。这种被共享的变量称为全局变量。每个希望共享全局变量的函数或希望共享全局变量的函数或MATLAB基本工作空间,必须逐基本工作空间,必须逐个用个用global对具体变量加以专门定义。没采用对具体变量加以专门定义。没采用global定义的函定义的函数或基本空间,将无权享用全局变量。数或基本空间,将无权享用全局变量。n如果某个函数的运作使全局变量的内容发生了变化,那么其他如果某个函数的运作使全局变量的内容发生了变化,那么其他函数空间以及基本工作空间中的同名变
8、量也就随之变化。函数空间以及基本工作空间中的同名变量也就随之变化。n除非与全局变量联系的所有工作空间都被删除,否则全局变量除非与全局变量联系的所有工作空间都被删除,否则全局变量依然存在。依然存在。n例例4、M文件的一般结构文件的一般结构由于从结构上看,脚本文件只是比函数文件少由于从结构上看,脚本文件只是比函数文件少一个一个“函数申明行函数申明行”。典型典型M函数文件的结构:函数文件的结构:n函数申明(定义)行函数申明(定义)行(Function declaration line):nH1行行(The first help text line):n在线帮助文本在线帮助文本(Help text)区
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第八 章程 设计
![提示](https://www.yzwku.com/images/bang_tan.gif)