Оператор перехода

Материал из K3-Macro

Оператор перехода имеет следующий вид:

goto <Label>

Оператор перехода указывает, что далее должен выполняться оператор, помеченный указанной в операторе перехода меткой <Label>. Метка представляет собой комбинацию символов, оканчивающуюся двоеточием.

Пример:

K3.png

Пример на макроязыке к3:


 if (close==1) { goto met; }
 i=i+1;
 if (i>8) { goto met; }
 prev[1]=curr[1]; prev[2]=curr[2]; prev[3]=curr[3];
 curr[1]=next[1]; curr[2]=next[2]; curr[3]=next[3];
 goto add1;
 met:
 zoom viewall all;

К сожалению, в макроязыке K3 отсутствуют специальные операторы организации циклов. Циклы в K3 организуются с помощью комбинаций вида:

K3.png

Пример на макроязыке к3:


 i=0;
 loop:
 i=i+1;
 . . .
 if (i<10)
 {
  goto loop;
 }

В целом же, злоупотреблять оператором перехода не рекомендуется. Следует помнить, что у каждой базовой конструкции языка (последовательное исполнение, ветвление и цикл) должен быть только один вход и только один выход.


Макро | Переменные и выражения | Присваивание значений переменной | Оператор условный | Оператор перехода | Оператор вызова подпрограммы | Оператор выхода в вызывающую макропрограмму | Оператор выхода в интерактивный режим | Оператор вызова макропрограммы | Оператор получения параметров в макропрограмме | Обработка ошибок | Команды системы