Описание тега control-flow

Поток управления (или поток управления) относится к порядку, в котором операторы оцениваются или выполняются.

Поток управления (или поток управления) относится к порядку, в котором операторы оцениваются или выполняются.

Есть много методов для управления потоком выполнения в программе:

Безусловные прыжки могут использовать метки:

foo:
printf ("Hello, world.\n");
goto foo;

... или номера строк:

10 PRINT "something"
20 GOTO 10

Условное ветвление может использовать конструкции if-else:

if ($x > 3) {
    print "$x is many.";
} else {
    print "$x is few.";
}

... или операторы переключения:

case n of
    1 : writeln('one');
    2 : writeln('two');
    3 : writeln('three');
end;

Существуют циклы различных видов, в том числе для циклов:

for (var i = 0; i < 9; i++) {
    window.alert(i);
}

... циклы foreach:

foreach (int x in myArray)
{
    Console.WriteLine(x);
}

... и циклы while:

while read z
do
    echo "Hello, ${z}."
done

Циклы также могут быть прерваны досрочно или обойти часть тела цикла с помощью операторов break и continue соответственно:

for club in ("groucho", "fight", "fight", "kitkat", "drones"):
    if club == "fight":
        continue
    if club == "kitkat":
        break
    print(club)

Перед возвратом функции временно перенаправляют выполнение на именованные участки кода:

hello = (name) -> "Hello, #{ name }."
console.log hello "world"

Исключения используются для отклонения потока управления в исключительных случаях:

try {
    x = 1 / 0;
    System.out.println("Hello, world."); // is not reached
} catch (ArithmeticException e) {
    System.out.println("Goodbye, world.");
}