golang-键盘录入数据

golang中实现键盘输入依赖于fmt包的Scanln()和Scanf()函数。

Scanf函数

func Scanf(a ...interface{}) (n int, err error)
Scanf从标准输入扫描文本,将成功读取的空白分隔的值保存进成功传递给本函数的参数。
换行视为空白。
返回成功扫描的条目个数和遇到的任何错误。
如果读取的条目比提供的参数少,会返回一个错误报告原因。

package main

import "fmt"

func main() {
	var name string
	var	age byte
	var sal float32
	var isPass bool

	fmt.Println("input you name, age, salary, pass")
	if _, err := fmt.Scanf("%s %d %f %t", &name, &age, &sal, &isPass);err != nil{
		fmt.Println()
	}
	fmt.Printf("名字是 %v 年龄是 %v 
薪水是 %v 
是否通过考试 %v 
",
		name, age, sal, isPass)
}

  

Scanln函数
func Scanln(a ...interface{}) (n int, err error)
Scanln类似Scan,但会在换行时才停止扫描。
最后一个条目后必须有换行或者到达结束位置。

package main

import "fmt"

func main() {
	var name string
	var	age byte

	fmt.Println("请输入姓名 ")
	//当程序执行到 fmt.Scanln(&name),程序会停止在这里,等待用户输入,并回车
	fmt.Scanln(&name)
	fmt.Println("请输入年龄 ")
	fmt.Scanln(&age)

	fmt.Printf("名字是 %v 	 年龄是 %v", name, age)
}

  

原文地址:https://www.cnblogs.com/chenpengzi/p/14815392.html