goto-Anweisung in der Go-Sprache

Schleifenanweisungen in der Go-Sprache

Die goto-Anweisung in der Sprache Go kann bedingungslos zu einer angegebenen Zeile in der Prozedur springen.

Die goto-Anweisung wird normalerweise zusammen mit bedingten Anweisungen verwendet. Sie kann verwendet werden, um bedingte Sprünge zu realisieren, Schleifen zu bilden, aus Schleifen herauszuspringen und andere Funktionen umzusetzen.

In der strukturierten Programmierung wird die Verwendung von goto-Anweisungen jedoch im Allgemeinen nicht befürwortet, um Verwirrung im Programmfluss zu vermeiden, die das Programm schwer verständlich und schwer zu debuggen macht.

Syntax

Das Syntaxformat von goto ist wie folgt:

goto label;
..
.
label: statement;

Das Flussdiagramm der goto-Anweisung ist wie folgt:

Beispiel

Wenn Variable a gleich 15 ist, überspringe diese Iteration der Schleife und kehre zur Startanweisung LOOP: der Schleife zurück.

Beispiel

package main

import "fmt"

func main() {
   /* Lokale Variablen definieren */
   var a int = 10

   /* Loop */
   LOOP: for a < 20 {
      if a == 15 {
         /* Skip iteration */
         a = a + 1
         goto LOOP
      }
      fmt.Printf(Wert von a ist : %d\n", a)
      a++    
   }  
}

Das Ausführungsergebnis des obigen Beispiels ist:

a的值为 : 10
a的值为 : 11
a的值为 : 12
a的值为 : 13
a的值为 : 14
a的值为 : 16
a的值为 : 17
a的值为 : 18
a的值为 : 19

Schleifenanweisungen in der Go-Sprache

Weitere Erweiterungen