「出力引数 "<変数名>"(および他の引数もおそらく)は "<関数名>" の呼び出し中に代入さ​れていません。」のエ​ラーが出るのはなぜで​すか?

조회 수: 20 (최근 30일)
MathWorks Support Team
MathWorks Support Team 2019년 2월 19일
답변: MathWorks Support Team 2019년 2월 19일
MATLAB プログラムを実行すると、下記のエラーが発生します。
出力引数 "<変数名>"(および他の引数もおそらく)は "<関数名>" の呼び出し中に代入されていません。
理由と回避方法を教えてください。

채택된 답변

MathWorks Support Team
MathWorks Support Team 2019년 2월 20일
このエラーが発生する原因は、メインのコードでは、呼び出した関数から出力引数を返すように定義されていますが、その関数から出力されようとした時、その出力引数が関数内に存在しないことが原因です。
下記の例では、sub 関数が呼び出されますが、特定の条件(in <= 0.5 の場合)には、出力引数 out が未定義となり、エラーが発生します。
(main1.m)
x = rand(1);
y = sub(x);
(sub.m)
function out = sub(in)
if in > 0.5
out = 1;
end
一般的には、関数内で出力引数の1つの名前のスペルを間違えたか、関数の出力引数の1つに値を代入しし忘れていることによって発生している可能性があります。
警告またはエラーメッセージにリストされている関数の最後の行(上記例では、sub 関数の最後の行の end ) にブレークポイントを置き、MATLAB を停止し、出力引数である変数がワークスペース内に存在するかを確認してください。
引数が存在しない場合は、すべての条件において、該当の出力引数が定義されるようにコードを見直してください。

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 入力引数と出力引数에 대해 자세히 알아보기

태그

아직 태그를 입력하지 않았습니다.

제품

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!