go的 fmt 包的 fmt.Scanln() 或者 fmt.Scanf()可以获取键盘输入。文档地址:http://docscn.studygolang.com/pkg/fmt/#Scanln

1.1. fmt.Scanln()函数:

package main

import (
    "fmt"
)
func main() {
    var name string
    var age uint32
    var score float32
    var isPass bool
    fmt.Println("请输入名字:")
    //fmt.Scanln()函数会阻塞等待用户输入
    //传递变量name的地址。引用传递。在fmt.Scanln()函数中改变name的值。
    fmt.Scanln(&name)
    fmt.Println("请输入年龄:")
    fmt.Scanln(&age)
    fmt.Println("请输入分数:")
    fmt.Scanln(&score)
    fmt.Println("是否通过考试:")
    fmt.Scanln(&isPass)
    fmt.Println(name,age,score,isPass)
}
  • fmt.Scanln()函数会阻塞等待用户输入。输入完成回车之后继续。
  • fmt.Scanln()函数传递变量的地址。引用传递。在fmt.Scanln()函数中改变变量的值。

fmt.Scanf() 函数:

package main

import (
    "fmt"
)
func main() {
    var name string
    var age uint32
    var score float32
    var isPass bool
    fmt.Println("请输入名字、年龄、分数、是否通过考试。用空格分隔。")
    fmt.Scanf("%s %d %f %t",&name,&age,&score,&isPass)
    fmt.Println(name,age,score,isPass)
}
  • fmt.Scanf() 函数的第一个参数是带占位符的。匹配用户输入的字符串。

  • 获取到用户输入之后,把占位符的值,赋值给相关的变量。

执行结果如下:

results matching ""

    No results matching ""