猿问

如何为 Go 程序添加暂停?

当我执行 Go 控制台程序时,它只在一秒钟内执行,我一直在寻找 Google、Go 网站和 Stackoverflow。


import (

    "fmt"

)


func main() {

    fmt.Println()

}

当我执行它时它立即关闭。


编辑 2 实际上我希望程序永久暂停,直到用户按下按钮


红颜莎娜
浏览 393回答 3
3回答

猛跑小猪

您可以使用 暂停程序任意长的时间time.Sleep()。例如:package mainimport ( "fmt"         "time"       )   func main() {  fmt.Println("Hello world!")  duration := time.Second  time.Sleep(duration)}要任意增加持续时间,您可以执行以下操作:duration := time.Duration(10)*time.Second // Pause for 10 seconds编辑:由于 OP 为问题添加了额外的约束,因此上面的答案不再符合要求。您可以Enter通过创建一个等待读取换行符 ( \n) 字符的新缓冲区读取器来暂停,直到按下该键。package mainimport ( "fmt"         "bufio"         "os"       )func main() {  fmt.Println("Hello world!")  fmt.Print("Press 'Enter' to continue...")  bufio.NewReader(os.Stdin).ReadBytes('\n') }

胡子哥哥

package mainimport "fmt"func main() {    fmt.Println("Press the Enter Key to terminate the console screen!")    fmt.Scanln() // wait for Enter Key}

SMILET

最少导入的最简单的另一种方法使用这 2 行:var input stringfmt.Scanln(&input)在程序末尾添加这一行,将暂停屏幕直到用户按下 Enter 键,例如:package mainimport "fmt"func main() {    fmt.Println("Press the Enter Key to terminate the console screen!")    var input string    fmt.Scanln(&input)}
随时随地看视频慕课网APP

相关分类

Go
我要回答