Язык:
Русский
English
label (зарезервированное слово)
В разделе Label объявляются метки, которые помечают операторы в соответствующей операторной части.
Синтаксис
label идентификатор, ..., идентификатор;
Замечания
Каждая метка должна помечать только один оператор.
В дополнение к идентификаторам, в качестве метки также можно использовать последовательность цифр в диапазоне от 0 до 9999.
Передать управление к метке можно с помощью оператора goto.
Пример
label 1, 2;
begin
goto 1;
.
.
.
1 : WriteLn('Ненормальное завершение');
2 : WriteLn('Нормальное завершение');
end.
Учтите!: Само понятие структурного программирования и общепринятый стиль программирования на структурных языках НЕ ПРИВЕТСТВУЕТ применение меток и операторов перехода в программах. Это затрудняет понимание программы как автором, так и потребителями, кроме того, применение меток отрицательно сказывается на эффективности генерируемого кода.
Ада
Не нужно предварительно объявлять метки. Число в качестве метки использовать нельзя. В исходном тексте метки обрамляются << и >>:
<<Here>> <<Ici>> <<Aqui>> <<Hier>> null;
<<After>> X := 1;
<<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;
Необходимость использовать метки в Borland Pascal возникает, когда нужно выйти сразу из нескольких вложенных циклов. В языке Ада циклам можно давать имена и эти имена использовать в операторе exit вместо goto:
Main_Cycle : loop
.
.
.
while ... loop
.
exit Main_Cycle when Found;
.
end loop;
.
.
.
end loop Main_Cycle;
См. также
Лекция №1.3: Начальные сведения о программах на языке Pascal