matlab中Inline函数

2026-02-15 05:52:23

1、作为示例,首先在M文件内编写如下函数:

% function operation

function [s,n] = calsum(n)

s = 0;

for i = 1:n

    s = s + i;

end

2、第一种方式直接以函数名调用,与之前我的分享《matlab中如何定义函数》一致,调用时如下就可:

>> [sa,na] = eg_sum(100)

输出:

sa =

        5050

na =

   100

matlab中Inline函数

3、以函数句柄形式调用,函数名作为参数,如下所示:

>> funame = @eg_sum;

>> [sum,n] = feval(funame,100)

函数输出:

sum =

        5050

n =

   100

matlab中Inline函数

4、inline函数调用格式如下所示:

>> fname = inline('sum(1:n)','n')

此时会输出:

fname =

     Inline function:

     fname(n) = sum(1:n)

首先构造函数句柄,随后就可利用feval函数计算:

>> calsum = feval(fname,100)

此时就会输出:

calsum =

        5050

matlab中Inline函数

5、匿名函数调用格式: fun = @(arg1,arg2,...)expr,其中expr为函数表达式,arg1、arg2、...等为自变量字符串。

作为示例,如下所示:

>> fname = @(n)sum(1:n)

输出:

fname = 

    @(n)sum(1:n)

输入如下形式调用:

>> fsum = feval(fname,100)

输出信息:

fsum =

        5050

matlab中Inline函数

猜你喜欢