matlab,简述脚本M文件和函数M文件的区别?

2024-12-26 13:47:57
推荐回答(4个)
回答1:

二者的区别为:

脚本M文件:

1、为多条命令的综合体

2、没有输入或输出变量

3、程序运行结束后变量都保存在MATLAB基本工作空间

4、不需要函数声明

函数M文件:

1、扩展MATLAB函数库

2、可以包含输入输出量

3、程序运行中,产生的变量存放在函数工作空间,调用结束后变量清除

4、包含函数声明‘function’

扩展资料:

脚本M文件:

脚本M文件是按照用户意愿排列而成的MATLAB命令集合,运 行后,所有变量都将保存在workspace中,只要用户不用clear或者 关闭MATLAB,这些变量都将一直保存在workspace。 

函数M文件:

函数M文件是由关键词‘function’ 引导的,包含或不包含输 入和输出的命令集合,主要是为了解决某些小的问题而编写的命令 集合。当函数文件运行时,MATLAB会为该函数开辟临时的、独 立的函数工作空间,当运行结束后,函数M文件中所产生的变量都 被清空,以节省内存空间。

脚本M文件与函数M文件的关系:

脚本M文件是包含多条MATLAB命令的文件,回答如何解决问 题。函数M文件一般是包含输入变量并把结果传送给输出变量的文 件,反映输出量与输入量之间的函数关系。

参考资料:百度百科-MATLAB

回答2:

(1)M脚本文件名不必与函数名相同;(2)M函数文件调用时需要提供函数参数,而M脚本文件只需要提供文件名;
(3)M脚本文件创建的每个变量都会保存到Matlab工作区,而M函数文件只有输出结果才保存到Matlab工作区中;
(4)文件格式上的一些区别。

回答3:

脚本可以直接运行,函数一般要带参数,如果带参数为空,也可以直接运行。

回答4:

函数文件就像一个包装好的黑盒子
通过输入,输出参数和外界交换信息
我们可以向函数传递参数,并取得函数返回的参数
而函数文件运行的时候,有一个独立的变量储存空间
函数里面定义的变量不会影响base工作空间的内容
base工作空间的变量也不会影响函数内部的变量
函数文件必须以函数定义行为第一行内容

而脚本文件实际上就是将多条指令存放在一起
运行脚本文件,实际上和将脚本文件内容复制之后,粘贴在命令行运行是等价的
脚本文件没有输入输出参数
而其可以使用base工作空间中的变量
在脚本文件中定义的变量也直接储存在base工作空间中