How to create an infinite loop in Go

4 Answers

0 votes
// Infinite for {} Loop

package main

import "fmt"

func main() {
    count := 0

    for { // infinite loop
        fmt.Println("Iteration:", count)

        if count == 3 {
            fmt.Println("Breaking out of loop...")
            break
        }

        count++
    }

    fmt.Println("Loop finished.")
}


/*
run:

Iteration: 0
Iteration: 1
Iteration: 2
Iteration: 3
Breaking out of loop...
Loop finished.

*/

 



answered Apr 11 by avibootz
0 votes
// Infinite Loop Using for true {}

package main

import "fmt"

func main() {
    count := 0

    for true { // infinite loop
        fmt.Println("Step:", count)

        if count == 3 {
            fmt.Println("Breaking out of loop...")
            break
        }

        count++
    }

    fmt.Println("Done.")
}


/*
run:

Step: 0
Step: 1
Step: 2
Step: 3
Breaking out of loop...
Done.

*/

 



answered Apr 11 by avibootz
0 votes
// Infinite Loop Using for ;;

package main

import "fmt"

func main() {
    count := 0

    for ;; { // infinite loop
        fmt.Println("Count:", count)

        if count == 3 {
            fmt.Println("Breaking out of loop...")
            break
        }

        count++
    }

    fmt.Println("Finished.")
}


/*
run:

Count: 0
Count: 1
Count: 2
Count: 3
Breaking out of loop...
Finished.

*/

 



answered Apr 11 by avibootz
0 votes
// Infinite Loop Using goto

package main

import "fmt"

func main() {
    count := 0

loopStart: // infinite loop
    fmt.Println("Index:", count)

    if count == 3 {
        fmt.Println("Breaking out of loop...")
        goto loopEnd
    }

    count++
    goto loopStart // infinite loop

loopEnd:
    fmt.Println("Loop ended.")
}


/*
run:

Index: 0
Index: 1
Index: 2
Index: 3
Breaking out of loop...
Loop ended.

*/

 



answered Apr 11 by avibootz
...