Go语言键盘输入

Go语言键盘输入教程

在编程中,我们经常需要获取用户的键盘输入的内容,这时候,就需要我们使用键盘输入语句来获取用户输入的数据。

Golang 中,获取用户输入的数据使用 fmt.Scanf() 或者 fmt.Scanln()。

Go语言fmt.Scanf()详解

语法

func Scanf(format string, a ...interface{}) (n int, err error)

参数

参数 描述
format 要输入的文本对应的 格式化占位符
a 每一个格式化占位符,所对应的变量内容。
n 返回成功读取的个数。
err 如果出错,则返回错误信息,否则,返回 nil。

返回值

Scanf 函数有两个返回值,一个是 n 返回成功读取的个数,一个是 err,如果出错,则返回错误信息,否则,返回 nil。

Go语言fmt.Scanln()详解

语法

func Scanln(a ...interface{}) (n int, err error)

参数

参数 描述
a 要读取的 变量 内容。
n 返回成功读取的个数。
err 如果出错,则返回错误信息,否则,返回 nil。

返回值

Scanln 函数有两个返回值,一个是 n 返回成功读取的个数,一个是 err,如果出错,则返回错误信息,否则,返回 nil。

案例

读取用户键盘输入

使用 fmt.Scanf() 读取用户键盘输入

package main import ( "fmt" ) func main() { fmt.Println("嗨客网(www.haicoder.net)") // 使用 fmt.Scanf() 读取输入 var name string var age byte var score float32 fmt.Println("请输入姓名 年龄 成绩") fmt.Scanf("%s %d %f", &name, &age, &score) fmt.Println("Name = ", name, "Age =", age, "Score =", score) }

程序运行后,控制台输出如下:

23_golang获取用户输入.png

我们首先定义了三个变量 name、age 和 score,类型分别是 stringbytefloat32

接着,我们使用 Scanf() 函数,输入这三个变量的值,他们的占位符分别是 %s%d%f,后面的变量我们需要使用取地址符,即 &

最后,我们再次输入上面的三个变量,发现这三个变量的值就是我们输入的三个变量的值。

读取用户键盘输入

使用 fmt.Scanln() 读取用户键盘输入

package main import ( "fmt" ) func main() { fmt.Println("嗨客网(www.haicoder.net)") // 使用 fmt.Scanln() 读取输入 var name string var age byte var score float32 fmt.Printf("请输入姓名: ") fmt.Scanln(&name) fmt.Printf("请输入年龄: ") fmt.Scanln(&age) fmt.Printf("请输入成绩: ") fmt.Scanln(&score) fmt.Println("Name = ", name, "Age =", age, "Score =", score) }

程序运行后,控制台输出如下:

24_golang获取用户输入.png

我们首先定义了三个变量 name、age 和 score,类型分别是 string 、byte 和 float32。

接着,我们使用 Scanln() 函数,输入这三个变量的值,Scanln() 函数不需要我们输入占位符,但后面的变量同样需要使用取地址符,即 &

最后,我们再次输入上面的三个变量,发现这三个变量的值就是我们输入的三个变量的值。

Go语言键盘输入总结

在 Golang 中,获取用户输入的数据使用 fmt.Scanf() 或者 fmt.Scanln()。fmt.Scanf() 语法:

func Scanf(format string, a ...interface{}) (n int, err error)

fmt.Scanln() 语法:

func Scanln(a ...interface{}) (n int, err error)