Matlab同一文件中子函数的写法以及函数调用详解

2025-11-26 12:15:39

1、我们打开Matlab软件,新建一个test.m主程序,键入一下代码

a=[5 8 6 4];

result=main_a(a);%main_a()函数是我们要编写的函数

我们用来测试的主要功能是用一个函数实现4个非零数的加减乘除运算,在主函数中将运算结果相加,加减乘除分别在四个子函数中运算。

这个例子很简单,在这里只是为了给大家演示如何进行子函数的编写以及注意事项。

Matlab同一文件中子函数的写法以及函数调用详解

2、我们新建一个脚本文件,命名为main_a,如图所示

Matlab同一文件中子函数的写法以及函数调用详解

3、在main_a中写入以下代码,为主程序

function result=main_a(a)

%将数据分别赋值

b=a(1);

c=a(2);

d=a(3);

e=a(4);

add_result=add_1(b,c,d,e);

sub_result=sub_1(b,c,d,e);

mul_result=mul_1(b,c,d,e);

div_result=div_1(b,c,d,e);

result=add_result+sub_result+mul_result+div_result;

4、在同一个文件之下,写入以下代码

%% 子函数

function add_result=add_1(b,c,d,e)%加法运算

add_result=b+c+d+e;

function sub_result=sub_1(b,c,d,e)%减法运算

sub_result=b-c-d-e;

function mul_result=mul_1(b,c,d,e)%乘法运算

mul_result=b*c*d*e;

function div_result=div_1(b,c,d,e)%除法运算

div_result=b*c/d*e;

总的main_a.m文件内容如图

Matlab同一文件中子函数的写法以及函数调用详解

5、这样,我们可以将不同的功能分别写成一个子函数,可以很方便的修改子函数或者主函数。需要注意的是,在main_a开头第一个函数是主函数,主函数只能有一个,其余的函数均为子函数。

6、程序运行结果如图所示

Matlab同一文件中子函数的写法以及函数调用详解

7、在文件中,子函数的参数值是通过主函数中的函数调用传过去的,子函数无法自动获取主函数中的参数值。我们也可以通过定义全局变量来使子函数获得参数值,如global b c d e。

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
相关推荐
  • 阅读量:89
  • 阅读量:146
  • 阅读量:60
  • 阅读量:56
  • 阅读量:110
  • 猜你喜欢