很久以前写的一篇Matlab自定义函数访问量很大,可惜没有点赞的,我感觉是我没讲清楚,这里又写了一篇笔记
Matlab函数
函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。
函数能提高应用的模块性,和代码的重复利用率。你已经知道Matlab提供了许多内建函数,比如disp()。但你也可以自己创建函数,这被叫做用户自定义函数
>> disp('hello world') hello world
总的来说,自定义函数分为两步:即定义函数和调用函数。
定义一个函数
你可以定义一个由自己想要功能的函数,以下是简单的规则:
函数代码块以function关键词开头,后接输出变量和函数标识符名称和圆括号()。任何传入参数和自变量必须放在圆括号中间,圆括号之间可以用于定义参数。函数的第一行语句可以选择性地使用文档字符串—用于存放函数说明。函数内容以end结束。
函数需要定义在脚本文件(*.m)中运行,不可以在命令窗口中临时创建。
语法
Matlab定义函数需要使用function关键字,一般格式如下:
function 输出变量 = 函数名(输入变量)	函数体 end
这里的输入变量和输出变量都可以根据实际情况缺省。
实例
创建一个函数,用来输出“hello world!” ,步骤如下:
新建一个脚本,命名为eg1.m
test(); function test() disp('hello world!') end
点击顶部菜单的运行按钮,即可在命令窗口输出:
>> eg1 hello world!
更复杂一点的应用,我们让函数带上输入变量和输出变量:
s = calc_area(4,5); function s = calc_area(w,h) s = w*h; disp(['area=',num2str(s)]); end
以上实例输出:
>> eg2 area=20
输入变量缺省
有时候,输入变量的个数不确定,但是又想将不同个数情况统一到一个函数里,即输入变量有缺省时,可以利用nargin来判断,然后给出对应的输出。例如:
out(1) out(1,2) out(1,2,3) function o