Оператор переходу викликає передачу керування оператору, якому передує мітка, зазначена в даному операторі переходу. Оператор переходу має такий вигляд: GоTо мітка ЙтиДо мітка Мітка - це послідовність цифр у діапазоні від 0 до 9999. Початкові нулі не є значущими. Наступним після оператора переходу буде виконаний оператор, позначений вказаною міткою. Під час використання оператора переходу треба дотримуватися таких правил. 1. Вказана в операторі переходу мітка повинна мітитися в тому ж модулі, що і сам оператор переходу. Іншими словами, не допускаються переходи з процедури або функції назовні або ззовні у її середину. 2. Перехід у середину структурного оператора (тобто перехід на більш глибокий рівень вкладеності) може викликати непередбачені ефекти, хоча компілятор не видає повідомлення про помилку. Наприклад, перехід у середину оператора циклу з параметром приводить до виконання частини тіла циклу при невідомих значеннях параметра та початкового і кінцевого значень. Часте вживання оператора переходу робить програму заплутаною, тому його не рекомендують використовувати. Наприклад, коли потрібно негайно завершити виконання процедури при Х<0, то можна скористатись переходом на порожній оператор, який є останнім у процедурі. Procedure Test; Label 11; .......... Begin ....... If X<0 then GoTo 11; ....... 11 : ; end;
|