没有足够的输入参数

通常,MATLAB 开发人员将使用 MATLAB 的编辑器编写和编辑代码,特别是具有输入和输出的自定义函数。顶部有一个 Run 按钮,可在最新版本的 MATLAB 中使用:

StackOverflow 文档

一旦开发人员完成代码,他们通常会试图按下“ 运行” 按钮。对于某些功能,这将工作正常,但对于其他功能,他们将收到 Not enough input arguments 错误,并对错误发生的原因感到困惑。

可能不会发生此错误的原因是因为你编写了一个 MATLAB 脚本或一个不接受输入参数的函数。使用“ 运行” 按钮将运行测试脚本或运行假定没有输入参数的函数。如果你的函数需要输入参数,那么当你编写了一个希望输入进入函数内部的函数时,会发生 Not enough input arguments 错误。因此,只需按下“ 运行” 按钮,就无法运行该功能。

为了证明这个问题,假设我们有一个函数 mult,它简单地将两个矩阵相乘:

function C = mult(A, B)
    C = A * B;
end

在 MATLAB 的最新版本中,如果你编写了这个函数并按下了 Run 按钮,它会给你我们期望的错误:

>> mult
Not enough input arguments.

Error in mult (line 2)
    C = A * B;

有两种方法可以解决此问题:

方法#1 - 通过命令提示符

只需在命令提示符中创建所需的输入,然后使用你创建的输入运行该功能:

A = rand(5,5);
B = rand(5,5);
C = mult(A,B);

方法#2 - 通过编辑器交互式地进行

在“ 运行” 按钮下方,有一个深黑色箭头。如果单击该箭头,则可以通过键入要在方法#1 中看到的方式完全调用函数的方式,指定要从 MATLAB 工作空间获取的变量。确保你在函数内指定的变量存在于 MATLAB 工作区中: