学习视频
MATLAB代码的两种执行方式:命令行、程序执行。
1.程序流程控制
1.1.m文件
matlab中m文件分为两种: 脚本文件&函数文件。
脚本文件:实际上是一个命令的集合,可认为是命令行的改良版,方便我们去编写命令
函数文件:声明了一个函数,是一个代码块,方便程序调用
区别:脚本没有输入没有返回,可以直接运行( 输入文件名/F5);函数类似于一个完整的程序,有输入有返回,在脚本中 调用才能运行。
脚本:
函数:
mlx文件
实时脚本,边写边运行,可以在输入时进行函数名自动补全。
1.2.三种程序结构
实例:
1.3.选择结构
if-else
switch
1.4.选择结构
for
示例:
while
break和continue
这个没什么好说的,和C++/C那些一样。
1.5.循环嵌套
这个也没什么好说的,示例(阶乘和):
2.函数文件
2.1函数文件的基本结构
由function和end引导,包含输入和输出
说明:函数文件名和函数名可以不同
2.2函数调用
% [输出参数表] = 函数名字(输入参数)
% 注意:输入的参数顺序、个数预定义的一致
2.3递归
2.4函数参数
2.5变量的作用域
% 全局变量global,局部变量local(函数内部)
% global作用域为整个函数空间,所有函数都可以对它进行存取和修改
% global可用来函数间的信息传递
% 不提倡使用global
3.特殊函数
3.1 子函数
主函数 Primary function
子函数 Subfuntion
子函数类似于其他编程语言中函数嵌套中的内层函数
3.2内联函数
以字符串形式存在的函数表达式可以通过 inline 函数转化成内联函数
3.3匿名函数(一行函数)
基本格式如下:
匿名函数名 = @(匿名函数输入参数) 匿名函数表达式
或者 匿名函数名 = @ 函数名
4.调试与优化
4.1程序调试
% help debug
% 常用的有
dbstop 设置函数断点
dbclear 清除断点
dbcont 从断点处执行
dbquit 推出debug模式
% 步进:运行一条语句,但不进入函数 F10
% 步入:单步运行,遇到函数进入函数,任然但不运行 F11
4.2程序性能分析与优化
% 利用探查器 Profiler
profile on % 打开探查器
debugTest % 脚本名字
profile viewer % 查看探查器的检测内容