沒有足夠的輸入引數

通常,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 工作區中: