脚本和函数

MATLAB 代码可以保存在 m 文件中以便重用。m 文件具有 .m 扩展名,该扩展名自动与 MATLAB 相关联。m 文件可以包含脚本或函数。

脚本

脚本只是程序文件,它以预定义的顺序执行一系列 MATLAB 命令。

脚本不接受输入,脚本也不返回输出。从功能上讲,脚本相当于直接在 MATLAB 命令窗口中输入命令并能够重放它们。

脚本的一个例子:

length = 10;
width = 3;
area = length * width;

该脚本将在当前工作空间中定义 lengthwidtharea,其值分别为 10330

如前所述,上述脚本在功能上等同于直接在命令窗口中键入相同的命令。

>> length = 10;
>> width = 3;
>> area = length * width;

功能

与脚本相比,函数更加灵活和可扩展。与脚本不同,函数可以接受输入并将输出返回给调用者。函数具有自己的工作空间,这意味着函数的内部操作不会更改调用者的变量。

所有函数都使用相同的标头格式定义:

function [output] = myFunctionName(input)

function 关键字开始每个函数头。产出清单如下。输出列表也可以是要返回的逗号分隔的变量列表。

function [a, b, c] = myFunctionName(input)

接下来是将用于调用的函数的名称。这通常与文件名相同。例如,我们将此函数保存为 myFunctionName.m

函数名称后面是输入列表。与输出一样,这也可以是逗号分隔列表。

function [a, b, c] = myFunctionName(x, y, z)

我们可以将之前的示例脚本重写为可重用的函数,如下所示:

function [area] = calcRecArea(length, width)
   area = length * width;
end

我们可以从其他函数调用函数,甚至可以从脚本文件调用函数。以下是我们在脚本文件中使用的上述函数的示例。

l = 100;
w = 20;
a = calcRecArea(l, w);

和以前一样,我们在工作区中创建 lwa,分别为 100202000