Matlab: Czy istnieje sposób na programowo bezpieczne zatrzymanie wykonywania kodu (np. Zatrzymanie FORTRAN)? [Zamknięte]

10

Jak mówi tytuł, chcę móc zatrzymać kod w określonym miejscu i bezpiecznie go zatrzymać. Nie mogę znaleźć polecenia, aby to zrobić, na przykład w FORTRAN występuje polecenie zatrzymania.

Oscylacja Isopycnal
źródło

Odpowiedzi:

15

Funkcja error('error message');zakończy działanie programu i wydrukuje komunikat o błędzie na konsoli.

Godric Seer
źródło
2

Istnieje breakwyjście z pętli i returnpowrót do funkcji wywołującej lub keyboard / promt.

Sztylet
źródło
1

Oto funkcja, która to robi (bez drukowania żadnej wiadomości):

function stoprun()
  ms.message='';
  ms.stack = dbstack('-completenames');
  ms.stack(1:end) = [];
  ds = dbstatus();
  stoponerror = any(strcmp('error', {ds.cond}));
  setappdata(0, 'dberrorkeep', stoponerror);
  dbclear error
  error(ms);
end
Kristján Jónasson
źródło
-2

możesz użyć „return”, a „zwróci kontrolę nad funkcją wywołującą, zanim osiągnie koniec funkcji”, co dla programu głównego oznacza wyjście z programu.

Nikola
źródło
Co dzieje się w przypadku, gdy nie masz funkcji?
nicoguaro