0

I wrote this m-file

function adhamm = adhamm(a,b)
    adhamm = a+b
end

and when I try to run it via MATLAB's command line by writing

a = 2;
b = 3;
adhamm(a,b);

I get this error

Undefined function 'adhamm' for input arguments of type 'double'.

Why is this?

4

3 回答 3

1

这些函数没有放在新版本的搜索路径中。MATLAB 根本不知道在哪里可以找到它们。但是,不要将它们放在 MATLAB 工具箱目录中。那不是放置您自己的功能的地方。将它们放在一个单独的目录中,您将告诉 MATLAB 如何使用路径工具进行查找。(如果你 cd 到那个目录,MATLAB 会自动查找那里,但这不是一个好的解决方案。)

您需要了解 matlab 中的搜索路径,以及 matlab 维护搜索路径的工具。因此,addpath、savepath、rmpath、pathtool。

于 2012-04-15T10:50:38.800 回答
0

您使用名称 adhamm.m 保存了您的函数,对吗?然后尝试在 adhamm.m 文件夹中执行该函数。

于 2012-04-15T10:42:41.460 回答
0

您可能已经保存了一个带有 name 的变量adhamm。键入clear adhamm并重试。

于 2012-04-15T21:18:59.483 回答