GO語言基礎--資料輸入的常用方式
阿新 • • 發佈:2021-02-03
GO語言基礎–資料輸入的常用方式
go語言的fmt包帶有輸入輸出資料的函式,常用的資料輸入函式有Scanf、Scanln、Scan
主要的格式佔位符:
%v | %d | %f | %t | %c | %s | %T | %o | %x和%X | %e和%E |
---|---|---|---|---|---|---|---|---|---|
按資料原格式 | 十進位制整形 | 單精度浮點型(float32) | 布林型 | 字元型 | 字串型 | 變數的資料型別 | 八進位制 | 十六進位制,前者的字母用小寫表示,後者用大寫 | 都為科學計數法 |
1.Scanf
這個函式跟c語言中的scanf一樣,用於格式化輸入,需要用到格式佔位符
package main
import"fmt"
func main() {
var a int
var b float64
var str string
var c bool
var d byte
fmt.Println("請輸入")
//注意:%s用於輸入字串時,讀取到空格會直接結束,所以不能直接用來輸入帶空格的字串
fmt.Scanf("%d %f %s %t %c", &a, &b, &str, &c, &d) //輸入一行,用空格隔開
fmt.Printf("%d %f %s %t %c", a, b, str, c, d)
}
執行結果:
2.Scanln
這個函式輸入時是一行一行地讀取資料,用多個Scanln函式輸入資料時要分多行
package main
import"fmt"
func main() {
var a int
var b float64
var str string
var c bool
fmt.Println("請輸入")
fmt.Scanln(&a)
fmt.Scanln(&b)
fmt.Scanln(&str)
fmt.Scanln(&c)
//上面的輸入也可以改成fmt.Scanln(&a,&b,&str,&c),只不過輸入的時候所有資料要輸在同一行,以空格隔開
fmt.Printf("%d %f %s %t", a, b, str, c)
}
執行結果:
//
3.Scan
這個函式跟Scanln類似
package main
import"fmt"
func main() {
var a int
var b float64
var str string
var c bool
fmt.Println("請輸入")
fmt.Scan(&a,&b,&str,&c)
fmt.Printf("%d %f %s %t", a, b, str, c)
}
輸出: