go基础——输入输出

package main

import (
        "bufio"
        "fmt"
        "os"
)

func main() {
        /*
                输入和输出
                fmt包
                        输出:
                                Print() 打印
                                Println()       打印后换行
                                Printf()        格式化打印
                        格式化打印占位符:
                                %v,原样输出
                                %T,打印类型
                                %t,bool
                                %s,string
                                %f,float
                                %d,10进制
                                %b,2进制
                                %o,8进制
                                %x,%X,16进制,分大小写
                                %c,打印字符
                                %p,打印地址,指针
                        输入:
                                Scan、Scanf和Scanln从标准输入os.Stdin读取文本;
                                Fscan、Fscanf、Fscanln从指定的io.Reader接口读取文本;
                                Sscan、Sscanf、Sscanln从一个参数字符串读取文本。
                bufio包
        */

        var a int
        var b float64
        fmt.Println("输入一个整数,一个浮点数")
        fmt.Scanln(&a, &b) //读取键盘输入,通过地址操作。阻塞式,输入时用空格分隔
        fmt.Printf("%d,%.2f\n", a, b)
        fmt.Scanf("%d,%f", &a, &b) //输入时用逗号分隔
        fmt.Printf("%d,%.2f\n", a, b)

        fmt.Println("输入一个字符串")
        reader := bufio.NewReader(os.Stdin)
        s1, _ := reader.ReadString('\n') //读取输入,直到\n。标准输出赋值给s1,_表示舍弃标准错误
        fmt.Println("读到的数据", s1)
}