Сегодня мы рассмотрим оператор goto в golang с примерами.

Как и другие популярные языки, Go также поддерживает оператор goto. Оператор goto используется для изменения выполнения последовательного потока путем передачи управления другой части программы.

За ключевым словом goto должно следовать label, чтобы сформировать законченное заявление. В языке Go вы можете использовать оператор goto для безусловного перехода к помеченному оператору в той же функции.

Давайте посмотрим на синтаксис оператора goto:

goto label;
..
.
label: statement;

Когда оператор goto срабатывает, он передает управление (или переходит) на указанный label, и область действия этой метки находится внутри функции только там, где она объявлена, если мы попытаемся сослаться на эту метку вне функции или заблокировать ее через компиляцию ошибка.

Так как оператор goto заставит выполнение перейти к указанному label, то объявление label должно содержать один оператор.

В приведенном ниже примере используется оператор goto и метка для реализации цикла для печати таблицы 2.

package main
import "fmt"
func main() {
 i := 1
Next: // label is declared.
 fmt.Println(i * 2)
 i++
 if i <= 10 {
  goto Next // execution jumps
 }
}

Вывод:

2
4
6
8
10
12
14
16
18
20

Program exited.

Вы можете найти вышеуказанный код здесь.

Выше мы реализовали оператор goto, который используется для печати таблицы 2, он возвращается к метке Next до значения i ≤ 10, как только оно увеличивается, он прекращает прыгать и завершает остальную часть выполнения.

Важно:оператор goto затрудняет чтение программы и отслеживание потока управления. Таким образом, не рекомендуется использовать его на любом языке программирования.

Удачного кодирования…!!