matlab提示错误:此上下文中不允许函数定义.

我的程序调用emd.m文件时报错,function imf=emd(x) 这段此上下文中不允许函数定义,这该怎么修改啊各位大神我后天答辩了,跪求!

用法上出现错误导致的报错。解决方法和操作步骤如下:

1、首选,打开编译器,然后在命令行中键入edit打开,如下图所示。

2、其次,完成上述步骤后,输入Function以表明该文件是功能文件,如下图所示。

3、接着,如果在等号的左侧输入了任何返回值,请使用方括号表示多个返回值,如下图所示。

4、然后,等号的右边是函数名称加括号,括号是参数,如下图所示。

5、随后,完成上述步骤后,使用%注释,注释的第一行是解释函数的功能,如下图所示。

6、接着,完成上述步骤后,传递两个点的坐标,然后计算两个点之间的距离,并传给返回值y,如下图所示。

7、最后,完成上述步骤后,保存文件,保存时文件名和功能名保持不变,如下图所示。这样,问题就解决了。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-06-05
将clear all去掉
函数中无须这句,函数只会调用你传过来的,没传的它不会动的追问

删掉这句还是改变不了结果啊

本回答被网友采纳
第2个回答  2018-04-19
去掉前面的function,MATLAB可以直接调用emd函数的。
第3个回答  2019-12-05
你可以看一下是不是有for循环或者其他循环没用加end,我的就是这个问题,脚本文件中是可以定义函数文件的,上面的老哥要注意哦
第4个回答  推荐于2018-04-19
从你讲的问题,虽然没讲太清楚,但我推测,你可能写了个脚本程序文件,其中定义了子函数,在运行时就弹出了这个提示。一般情况下,在函数文件中才能定义子函数,在脚本文件中不允许定义子函数。这是个基本的要求。本回答被网友采纳