Desidero eseguire un set di codice finché l'utente non desidera esplicitamente uscire dalla funzione. Per esempio: quando un utente esegue il programma, vedrà 2 opzioni:Come replicare mentre si è in viaggio?
- Run nuovo
- Exit
questo sarà ottenuto utilizzando struttura case interruttore. Qui se l'utente preme 1, verrà eseguita l'insieme delle funzioni associate a 1 e se l'utente preme 2, il programma uscirà. Come devo raggiungere questo scenario in golang? In Java, credo che questo potrebbe essere fatto usando do mentre la struttura, ma non supporta il ciclo while. In seguito è il mio codice che ho provato, ma questo va in un ciclo infinito:
func sample() {
var i = 1
for i > 0 {
fmt.Println("Press 1 to run")
fmt.Println("Press 2 to exit")
var input string
inpt, _ := fmt.Scanln(&input)
switch inpt {
case 1:
fmt.Println("hi")
case 2:
os.Exit(2)
default:
fmt.Println("def")
}
}
}
Il programma indipendentemente dell'ingresso, stampa solo "ciao". Qualcuno potrebbe, per favore, correggermi, che cosa sto sbagliando?
Grazie.
Si prega di restituire a questa domanda e cambia la tua risposta accettata. La risposta che hai accettato è ottima per il tuo caso specifico, ma la tua domanda è molto generica, e c'è una risposta che è molto meglio per la domanda generale che hai posto. Questa dovrebbe essere la risposta accettata: https://stackoverflow.com/a/32844744/167958 – Omnifarious