冰芹的 Notes

matlab里面的函数定义

创建于 2026-04-18T11:05:46

stats.m文件

matlab

function [s, m] = stats(x)
    s = sum(x);
    m = mean(x);
end

调用:

matlab

[总和, 均值] = stats([1,2,3,4]);

函数句柄

1. 两种最常用写法

(1)匿名函数(最常用,一行写完)

直接在脚本里写,不用 .m 文件:

matlab

f = @(x) x.^2 + sin(x);
  • @:定义函数句柄
  • @(x):输入参数是 x
  • 后面是表达式

调用:

matlab

y = f(2);

多输入:

matlab

f = @(a,b) a + b.^2;
y = f(2,3);

(2)给已有的 .m 函数做句柄

如果你有一个函数文件 myfun.m

matlab

function y = myfun(x)
    y = x^3;
end

可以做句柄:

matlab

fh = @myfun;   % 句柄变量
y = fh(5);     % 等价 myfun(5)

*内置函数

nargin:输入变量数