Язык:
Русский
English
goto (зарезервированное слово)
Оператор goto переходит при выполнении программы к определённому оператору программы, перед которым находится метка.
Синтаксис
goto label
Замечания
Метка должна находиться в том же самом блоке, что и оператор goto. Нельзя перейти из одной процедуры или функции в другую.
Пример
label 1, 2;
goto 1;
.
.
.
1 : WriteLn('Ненормальное завершение');
2 : WriteLn('Нормальное завершение');
Учтите!: Само понятие структурного программирования и общепринятый стиль программирования на структурных языках НЕ ПРИВЕТСТВУЕТ применение меток и операторов перехода в программах. Это затрудняет понимание программы как автором, так и потребителями, кроме того, применение меток отрицательно сказывается на эффективности генерируемого кода.
Адский примерчик
<<Sort>>
for i in 1 .. N - 1 loop
if A (i) > A (i + 1) then
Exchange (A (i), A (i + 1));
goto Sort;
end if;
end loop;
См. также
Лекция №1.3: Начальные сведения о программах на языке Pascal
Лекция №3.3: Ветвления. Массивы. Циклы