我正在通过Go tour
在Go中使用for循环我跑步时
package main
import "fmt"
func main() {
sum := 1
for sum < 1000 {
sum += sum
}
fmt.Println(sum)
}
程序运行正常,输出为1024
但是当我更改sum := 0
package main
import "fmt"
func main() {
sum := 0
for sum < 1000 {
sum += sum
}
fmt.Println(sum)
}
给出错误提示
process took too long
Program exited.
编辑:我沉迷于Go巡回赛,以至于我无法意识到,我犯了一个逻辑错误:P。
答案 0 :(得分:1)
因为您要在循环内部将0加到0,所以总会得到0。因此循环永远不会结束,因为sum总是0。