Sterowanie pętlą: break i continue

<< Kliknij, aby wyświetlić Spis treści >>

Nawigacja:  Dodatki > TCL > Sterowanie >

Sterowanie pętlą: break i continue

W Tcl istnieją dwie instrukcje bezwarunkowo przerywające wykonanie części lub całości pętli: break i continue. Działają one identycznie jak w języku C; nie pobierają żadnych argumentów. Instrukcja break powoduje natychmiastowe przerwanie wykonania najbardziej zagnieżdżonej pętli. Np., niech pętla z poprzedniego przykładu musi być przerwana gdy tylko zostanie znaleziony element ZZZ:

set b ""

    foreach i $a {

        if {$i == "ZZZ"} break

        set b [linsert $b 0 $i]

    }

Instrukcja continue przerywa wykonanie bieżącej iteracji najbardziej zagnieżdżonej pętli i powoduje przejście do następnej iteracji. W przypadku pętli while oznacza to wyskok z ciała pętli i wyznaczenie wartości warunku stopu, w przypadku pętli for skrypt reinicjujący jest wykonywany przed wyznaczeniem wartości warunku stopu. Np., w poniższym przykładzie element listy "ZZZ" zostanie pominięty podczas odwracania kolejności:

set b ""

    foreach i $a {

        if {$i == "ZZZ"} continue

        set b [linsert $b 0 $i]

    }