go 键盘输入

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zhangpengzp/article/details/88405762

go 终端输入的方法:

目录

scanln

scanf

OS


scanln

package main

import (
	"fmt"
	)


func main() {

	// scanf 一次输入多个变量,空格隔开,按照顺序依次放入变量
		var name,phoneNumber,address string
		fmt.Printf("Please enter your name and phonenumber: ")
		fmt.Scanln(&name, &phoneNumber,&address)   
        
		fmt.Println("name = ",name)
		fmt.Println("phoneNumber = ", phoneNumber)
		fmt.Println("address = ", address)
}

scanf

类似c语言

        var name2 string
		var age init

		fmt.Printf("Please enter your name and age: ")
		fmt.Scanf("%s  %d", &name2, &age)
		fmt.Println("name = ",name2)
		fmt.Println("age = ",age)

输出:

注意fmt.Scanf("%s  %d", &name2, &age) 中%s 和 %d中间只能是空格或多个空格,如果是,则导致age无值。

OS

var (
	     inputReader *bufio.Reader //inputReader 是一个指向 bufio.Reader 的指针。
		 nameAgeNumber string
	     err error
	 )
	inputReader = bufio.NewReader(os.Stdin)    //创建一个读取器,并将其与标准输入绑定。
	     fmt.Printf("Please input your name age number: ")
	    nameAgeNumber, err = inputReader.ReadString('\n') //读取器对象提供一个方法 ReadString(delim byte) ,该方法从输入中读取内容,直到碰到 delim 指定的字符,然后将读取到的内容连同 delim 字符一起放到缓冲区。
	     if err == nil {
		         fmt.Printf("The input was: %s", nameAgeNumber)
		     }

输出

猜你喜欢

转载自blog.csdn.net/zhangpengzp/article/details/88405762