我最近开始学习golang,我会在fmt.Scan()
的myInput函数中获得用户输入,但是当我把它放在fmt.Scan()
函数中时,没有获得用户输入;fmt.Scan()
在以下示例中不工作:
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)
}
如何解决这个问题,谢谢,为什么不工作Scan()?
2条答案
按热度按时间lmyy7pcs1#
必须删除扫描方法中的
&
l7mqbcuq2#
对于那些正在寻找答案的人来说,应该是这样的
当您将值赋给指针变量时,必须使用指向该变量的指针 *var_name指定该值
它应该类似于,//使用scanf
//使用扫描
下面是上面的代码应该是这样的