Instrukcja powrotu
Instrukcja powrotu (wyjścia) – instrukcja w określonym języku programowania powodująca opuszczenie aktualnie wykonywanego bloku programu (modułu, podprogramu: procedury, funkcji, metody, lub innych segmentów – bloków programowych – występujących w określonym języku programowana, a także całego programu, procesu) i przejście do następnej instrukcji występującej po instrukcji wywołania danego podprogramu.
Rodzaje instrukcji wyjścia
Instrukcja wyjścia:
- niejawna: występuje na końcu danego bloku przed słowem zamykającym segment,
- jawna:
- bez wartości przekazywanej do miejsca wywołania
- z wartością przekazywaną do miejsca wywołania
- dla segmentu – podprogramu – będącego funkcją, wartość przekazywana zwykle zostaje użyta w określonym wyrażeniu do obliczeń (istnieją języki dopuszczające wywołanie funkcji poza wyrażeniem i tym samym ignorowanie tej wartości),
- przy wyjściu z programu, wartość przekazywana jest do systemu (lub innego procesu wywołującego program), jako kod zakończenia programu.
Stosowanie instrukcji wyjścia
Blok, segment programu definiuje pewną część algorytmu do wykonania, program definiuje całość danego zagadnienia. Rozpoczęcie wykonywania instrukcji następuje po wykonaniu instrukcji wywołania:
- dla programu w systemie operacyjnym,
- dla podprogramu w instrukcji wywołania lub w wyrażeniu.
Zakończenie natomiast następuje po ostatniej instrukcji zawartej w definicji bloku, co implikuje niejawne (o ile nie umieszczono jawnie instrukcji wyjścia) wystąpienie odpowiedniej instrukcji wyjścia. Często jednak występuje konieczność wcześniejszego zakończenia bloku, co wymaga jawnego użycia instrukcji wyjścia.
Języki programowania
RETURN
/* instrukcja wyjścia powoduje opuszczenia aktualnie wykonywanej funkcji (lub metody) w przypadku funkcji main() powoduje jej opuszczenie, a w konsekwencji opuszczenie całego programu */ return wyrażenie;
RETURN [wyrażenie]
Instrukcja RETURN w języku Clipper zamyka blok podprogramu (jak end w Pascalu lub } w C).
nazwa EXIT.
- koniec podprogramu: ;
- wyjście z podprogramu ABORT
- zakończenie
STOP [wartość] END
- wyjście
RETURN
- przypisanie wartości funkcji
nazwa_funkcji=wyrażenie
- zakończenie programu
stop(wyrażenie) exit(wyrażenie)
- wyjście
return [wyrażenie] fail
- koniec procedury
end
DONE QUIT CANCEL
- koniec podprogramu
end;
- zwrócenie wartości przez funkcję
{ nazwa_funkcji traktowana jest jak zmienna lokalna, której wartość przy wyjściu jest przekazywana jako wartość funkcji } nazwa_funkcji:=wyrażenie;
- Turbo Pascal (procedury standardowe dostępne w module System):
- wyjście z programu
- RunError(kod_błędu)
- Halt(kod_powrotu)
- wyjście z bieżącego bloku (programu lub podprogramu)
- Exit;
- wyjście z programu
- wyjście z procedury
/* instrukcja wyjścia powoduje opuszczenia aktualnie wykonywanej procedury, w przypadku procedury z frazą OPTIONS(MAIN) powoduje jej opuszczenie, a w konsekwencji opuszczenie całego programu */ RETURN [(wyrażenie)];
- zakończenie procedury
END nazwa;
- zakończenie
STOP EXIT
- wyjście
RETURN [wyrażenie];
- zakończenie
END;
- wyjście
return [wyrażenie]
- zwrócenie wartości przez generator
yield [wyrażenie]
- wyjście
Exit Sub Exit Function
- zakończenie
End Sub End Function
- przypisanie wartości funkcji
‘ nazwa funkcji traktowana jest jak zmienna lokalna, której wartość przy wyjściu jest przekazywana jako wartość funkcji nazwa_funkcji=wyrażenie