Differenze tra le versioni di "GOTO"

Da Gambas-it.org - Wikipedia.
 
(6 versioni intermedie di uno stesso utente non sono mostrate)
Riga 5: Riga 5:
 
  <BR>etichetta:
 
  <BR>etichetta:
 
  ......
 
  ......
 
  
  
 
Esempio:  
 
Esempio:  
  '''Public''' Sub Main()
+
  Public Sub Main()
 
    
 
    
   Dim i As Integer
+
   Dim b, j As Byte
  Dim j As Integer
 
 
   
 
   
   For i = 1 To 5
+
   For b = 1 To 5
     <Font Color= #B22222>GoTo</font> etichetta1       <Font Color=gray>' ''Il programma salta alla riga dove è presente l'etichetta "etichetta1"''</font>
+
     <Font Color=red>GoTo</font> <Font Color=darkgreen>etichetta1</font>  <Font Color=gray>' ''Il programma salta alla riga dove è presente l'etichetta "etichetta1"''</font>
 
   Next
 
   Next
 
   
 
   
  Print "Riga che sarà saltata."     <Font Color=gray>' ''Questa riga del Print sarà saltata !''</font>
+
  Print "Riga che sarà saltata." <Font Color=gray>' ''Questa riga del Print sarà saltata !''</font>
 +
 +
  <Font Color=darkgreen>etichetta1:</font>
 
   
 
   
    <Font Color= #B22222>etichetta1:</font>
+
   For j = 1 To 3 <Font Color=gray>' ''Terminato questo ciclo il programma uscirà dalla routine''</font>
   For j = 1 To 3         <Font Color=gray>' ''Terminato questo ciclo il programma uscirà dalla routine''</font>
+
     Print "Prova: "; b;; j
     Print "Prova";; i;; j
 
 
   Next
 
   Next
 
    
 
    
  '''End'''
+
  End
  
In console avremo:
 
  
Prova 1 1
+
Ma anche con comandi invertiti:
<BR>Prova 1 2
+
Public Sub Main()
<BR>Prova 1 3
+
 +
  Dim b As Byte
 +
 +
  <Font Color=darkgreen>etichetta1:</font>
 +
 +
  Inc b
 +
 +
  If b == 10 Then
 +
    Print b
 +
  Else
 +
    <Font Color=red>GoTo</font> <Font Color=darkgreen>etichetta1</font>  <Font Color=gray>' ''Il programma salta alla riga dove è presente l'etichetta "etichetta1"''</font>
 +
  Endif
 +
 +
End

Versione attuale delle 16:04, 6 lug 2024

L'istruzione GOTO consente di saltare all'etichetta dichiarata all'interno della medesima routine. Il programma continuerà il processo semplicemente dalla riga (ossia l'etichetta dichiarata) ove è saltato.

GOTO etichetta

......
etichetta: ......


Esempio:

Public Sub Main()
 
 Dim b, j As Byte

 For b = 1 To 5
   GoTo etichetta1   ' Il programma salta alla riga dove è presente l'etichetta "etichetta1"
 Next

 Print "Riga che sarà saltata." ' Questa riga del Print sarà saltata !

 etichetta1:

 For j = 1 To 3 ' Terminato questo ciclo il programma uscirà dalla routine
   Print "Prova: "; b;; j
 Next
 
End


Ma anche con comandi invertiti:

Public Sub Main()

 Dim b As Byte

 etichetta1:

 Inc b

 If b == 10 Then
   Print b
 Else
   GoTo etichetta1   ' Il programma salta alla riga dove è presente l'etichetta "etichetta1"
 Endif

End