認識 Go 標準輸入函式

函式

Scan

函式 Scan 從標準輸入讀取內容。

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

範例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
package main

import (
"fmt"
)

func main() {
var i, j, k int
fmt.Scan(&i, &j, &k)
fmt.Println(i, j, k)
}

// 輸入:
// 1
// 2
// 3

// 輸出:
// 1 2 3

Scanf

函式 Scanf 從標準輸入讀取格式化內容。

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

範例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
package main

import (
"fmt"
)

func main() {
var i int
var j float32
var k string
fmt.Scanf("%d-%f-%s", &i, &j, &k)
fmt.Println(i, j, k)
}

// 輸入:
// 1-0.1-string

// 輸出:
// 1 0.1 string

Scanln

函式 Scanln 從標準輸入讀取內容,若有換行即結束掃描。

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

範例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
package main

import (
"fmt"
)

func main() {
var i, j, k int
fmt.Scanln(&i, &j, &k)
fmt.Println(i, j, k)
}

// 輸入:
// 1

// 輸出:
// 1 0 0

// 輸入:
// 1 2 3

// 輸出:
// 1 2 3

參考資料