ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

return

呼び出し元の関数に制御を戻す

構文

return

説明

return は、MATLAB® が関数の最後に到達する前に呼び出し元の関数に強制的に制御を戻します。呼び出し元の関数とは、return の呼び出しを含むスクリプトまたは関数を呼び出した関数です。return を含む関数またはスクリプトを直接呼び出した場合は呼び出し元の関数がないため、MATLAB のコマンド プロンプトに制御が戻ります。

メモ

ifswitch などの条件付きブロックまたは forwhile などのループ制御ステートメントで return を使用するときは注意が必要です。MATLAB が return ステートメントに到達すると、ループが終了するだけでなく、スクリプトまたは関数も終了されて呼び出し元の関数またはコマンド プロンプトに制御が戻ります。

すべて折りたたむ

現在の作業フォルダーで、配列から値の平方根を探してその最初のインデックスを特定する findSqrRootIndex という関数を作成します。平方根がない場合は NaN を返します。

function idx = findSqrRootIndex(target,arrayToSearch)

idx = NaN;
if target < 0
   return
end

for idx = 1:length(arrayToSearch)
    if arrayToSearch(idx) == sqrt(target)
        return
    end
end

コマンド プロンプトで関数を呼び出します。

A = [3 7 28 14 42 9 0];
b = 81;
findSqrRootIndex(b,A)
ans =

     6

MATLAB が return ステートメントに到達すると、呼び出し元の関数がないため、キーボードに制御が戻ります。

現在の作業フォルダーにあるファイル returnControlExample.m で、配列から値の平方根を探してその最初のインデックスを特定する次の関数を作成します。この関数は前の例で作成した関数 findSqrRootIndex を呼び出します。

function returnControlExample(target)
    arrayToSearch = [3 7 28 14 42 9 0];
    idx = findSqrRootIndex(target,arrayToSearch);
    
    if isnan(idx)
        disp('Square root not found.')
    else
        disp(['Square root found at index ' num2str(idx)])
    end
end

コマンド プロンプトで関数を呼び出します。

returnControlExample(49)
Square root found at index 2

MATLAB が findSqrRootIndex 内の return ステートメントに到達すると、呼び出し元の関数 returnControlExample に制御が戻り、該当するメッセージが表示されます。

拡張機能

C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。

参考

| | | | | | | | |

R2006a より前に導入