我最近開始學習 golang,我會在myInput函數(shù)中獲取用戶輸入,fmt.Scan()但是當我把它放在函數(shù)fmt.Scan()中時,沒有得到用戶輸入;fmt.Scan()在示例下不起作用:package mainimport ( "fmt")func myInput(p1 *int, p2 *int) { fmt.Println("Enter text : ") fmt.Scan(*p1) fmt.Println("Enter text : ") fmt.Scan(*p2)}func rect(x int, y int, a *int, p *int) { *a = x * y *p = 2 *(x + y)}func main() { var length, width, area, perimeter int myInput(&length, &width) rect(length, width, &area, &perimeter) fmt.Println(length, width, area, perimeter)}如何解決這個問題,謝謝,為什么不工作 Scan() ?
1 回答

LEATH
TA貢獻1936條經(jīng)驗 獲得超7個贊
您必須&在掃描方法中刪除
package main
import (
"fmt"
)
func myInput(p1 *int, p2 *int) {
fmt.Println("Enter text : ")
fmt.Scan(p1)
fmt.Println("Enter text : ")
fmt.Scan(p2)
}
func rect(x int, y int, a *int, p *int) {
*a = x * y
*p = 2 *(x + y)
}
func main() {
var length, width, area, perimeter int
myInput(&length, &width)
rect(length, width, &area, &perimeter)
fmt.Println(length, width, area, perimeter)
}
- 1 回答
- 0 關(guān)注
- 178 瀏覽
添加回答
舉報
0/150
提交
取消