Hauptinhalt

return

Zurückgeben der Kontrolle an ein aufrufendes Skript oder eine aufrufende Funktion

Syntax

Beschreibung

return zwingt MATLAB® dazu, die Kontrolle wieder an das aufrufende Programm zu übergeben, bevor es das Ende des Skripts oder der Funktion erreicht. Das aufrufende Programm ist ein Skript oder eine Funktion, die das Skript oder die Funktion aufruft, die den Aufruf von return enthält. Wenn Sie das Skript oder die Funktion, die return enthält, direkt aufrufen, gibt es kein aufrufendes Programm und MATLAB übergibt die Kontrolle wieder an die Eingabeaufforderung.

Hinweis

Seien Sie vorsichtig, wenn Sie return innerhalb von bedingten Blöcken wie if oder switch oder innerhalb von Steueranweisungen für Schleifen wie for oder while verwenden. Wenn MATLAB eine return-Anweisung erreicht, wird nicht nur die Schleife verlassen, sondern auch das Skript oder die Funktion, und die Kontrolle wird wieder an das aufrufende Programm oder die Eingabeaufforderung übergeben.

Beispiel

Beispiele

alle reduzieren

Erstellen Sie in Ihrem aktuellen Arbeitsordner eine Funktion, findSqrRootIndex, um den Index des ersten Vorkommens der Quadratwurzel eines Wertes in einem Array zu ermitteln. Falls die Quadratwurzel nicht gefunden wird, gibt die Funktion NaN zurück.

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
end

Rufen Sie die Funktion über die Eingabeaufforderung auf.

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

     6

Wenn MATLAB auf die „return“-Anweisung stößt, gibt es die Kontrolle an die Tastatur zurück, da kein aufrufendes Skript und keine aufrufende Funktion vorhanden sind.

Erstellen Sie in einer Datei namens returnControlExample.m in Ihrem aktuellen Arbeitsordner die folgende Funktion, um den Index des ersten Vorkommens der Quadratwurzel eines Wertes in einem Array zu finden. Diese Funktion ruft die findSqrRootIndex-Funktion auf, die Sie im vorherigen Beispiel erstellt haben.

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

Rufen Sie die Funktion über die Eingabeaufforderung auf.

returnControlExample(49)
Square root found at index 2

Wenn MATLAB auf die return-Anweisung innerhalb von findSqrRootIndex stößt, übergibt es die Kontrolle wieder an die aufrufende Funktion returnControlExample und zeigt die entsprechende Meldung an.

Erweiterte Fähigkeiten

alle erweitern

C/C++ Codegenerierung
Generieren Sie C und C++ Code mit MATLAB® Coder™.

GPU-Codegenerierung
Generieren von CUDA® Code für NVIDIA® Grafikprozessoren mit dem GPU Coder™.

Versionsverlauf

Eingeführt vor R2006a

Siehe auch

| | | | | | | | |