Home > lang > labels 
 en fr de es nl pl pt pt_BR mk sq ca hu cs tr ar fa id vi ko ja ru zh zh_TW eo
Precedente  Successivo  Modifica  Rinomina  Undo  Refresh  Search  Amministrazione  
Documentazione
History
 
Labels etichette
Identificatore :

Label = Etichetta Un'etichetta indica l'obiettivo per un'istruzione GOTO. Un'etichetta, definisce una procedura a sua volta all'interno di una procedura. Un'etichetta termina sempre con due punti (:).

GOTO e le etichette possono essere utilizzate per lasciare una struttura di controllo.

FOR iY = 0 TO 5
  FOR iX = 0 TO 20 STEP 1
    PRINT "Loop1 "; iX
    IF iX = 3 THEN GOTO LOOP2
  NEXT
NEXT
LOOP2:

Attenzione! GOTO e label non possono essere usati all'interno di una struttura. Questo non è ammesso, sempre se le variabili sono presenti.

Esempio

iX = 18
' GOTO LOOP3   ' proibito.
FOR iX = 20 TO -2 STEP -2
LOOP3:
  PRINT "Loop2 "; iX
NEXT

La coppia di istruzioni Goto e Label: sono un retaggio del passato che risale alla nascita stessa del BASIC quando il BASIC era solo con i numeri di linea, con funzionalità assai limitate per non parlare della memoria. Con queste parole chiave si riusciva a creare delle specie di sub routine surrogate di funzioni e procedure che paradossalmente riuscivano a rendere il codice addirittura più leggibile. Ma con il passare del tempo e l'aumentare del codice tutto questo produsse il famigerato "spaghetti code" in cui era assai difficile districarsi e gli errori veramente difficili da scovare. Inoltre l'avanzamento del linguaggio ha portato a strutture dove questa coppia d'istruzioni non ha più senso di esistere il cui uso è veramente molto molto raro. Si consiglia pertanto di evitarne l'uso. Esse hanno ragion d'esistere solo per compatibilità

Vedi anche

GOTO