讲解视频:可以在bilibili搜索《MATLAB教程新手入门篇——数学建模清风主讲》。
MATLAB教程新手入门篇(数学建模清风主讲,适合零基础同学观看)_哔哩哔哩_bilibili
节选自第2章
上一章我们说过,MATLAB是一款非常强大的用于科学计算的商业软件。MATLAB中实现了非常多的功能,这些功能以文件的形式保存在我们电脑的本地。当执行MATLAB某个文件的命令时,MATLAB首先会在当前文件夹中寻找该命令对应的文件,如果找到的话就会执行这个文件;如果没有找到的话,会在搜索路径中继续寻找,如果都没找到的话则会报错。
初学者常犯的一个错误就是:“未定义函数或者变量”,这正是没有找到对应的文件时MATLAB提示的错误。(注意:这里所说的函数也是一种m文件,函数以关键字function开头,通常用来实现某一特定的功能,后面的章节会详细介绍。MATLAB中有非常多的内置函数,例如“sum”函数可以用来求和,“sort”函数可以用来排序,在后面我们会专门讲到大量的内置函数的用法,也会告诉大家如何自己编写函数。)
在本章第一节介绍MATLAB的界面时,我们讲过当前文件夹,MATLAB会优先在该文件夹中寻找你调用的命令。例如,我们上一小节自己定义的code1.m的脚本,如果你的当前文件夹下面没有这个文件,然后你在命令行执行了code1的命令,那么MATLAB可能会报错提示“未定义函数或变量’code1’。”简单提一下,这里的报错提示可以改成“未定义脚本、函数或变量’code1’”,这样会更完整一点,因为MATLAB的m文件分为两种:一种为脚本文件,另一种为函数文件。
那么,怎么利用当前文件夹解决这个报错呢?我们只需要修改当前文件夹为code1.m文件所在的文件夹即可。
有多种方式可以修改当前文件夹:
(1)点击浏览文件夹,然后选择需要修改到的文件夹即可
(2)直接复制要修改到的文件夹的地址到下图所示的位置
(3)右键单击编辑器打开的m文件名称,选择第一个选项
(4)在命令行窗口执行命令,cd命令后面接上要修改的文件夹地址
除了使用当前文件夹解决这个问题外,我们还可以利用MATLAB的搜索路径功能。大家可以点击MATLAB菜单栏:主页——设置路径,就能够看到MATLAB默认的搜索路径。
如下图所示,MATLAB的搜索路径中包含了非常多的文件夹。前面我们说过,在运行某一个命令时,MATLAB会先在当前文件夹中寻找,找不到的话才会在搜索路径中寻找。在搜索路径中也存在搜索的先后顺序,MATLAB会先从最上面的文件夹中搜索,直到找到为止,如果都没有找到则会报错。
因此,我们可以将code1.m文件所在的文件夹添加到搜索路径即可,在上面图片的左侧有对应的选项,大家可以尝试。
注意:我个人不太推荐大家将自己的文件夹添加到MATLAB的搜索路径。如果我们写的m文件的名称和MATLAB自带的命令相同,且我们的文件夹在搜索路径的最上方,那么以后MATLAB调用这个命令时,就会执行我们写的代码,这会导致我们遇到一些意想不到的问题。当然,如果你非常注意命名规范,写的m文件名称不和MATLAB自带的文件名冲突的话,使用搜索路径会比更改工作路径更加方便。