我正在尝试将GO作为编程的新手。我对以下代码中的顺序有疑问。此代码扫描用户输入。
func main() {
fmt.Print("Enter a number: \n")
var input float64
fmt.Scanf("%f", &input)
output := input * 2
fmt.Println(output)
但是,在字符串显示之后,当我输入任何数字时,在新行,它应该进入某种缓冲区或成为垃圾值。我是这么说的,因为扫描输入的分配在第一行之后开始。如果它是第一步或前一步,它将完全有意义。
答案 0 :(得分:0)
您输入的值在输入存储空间中分配(使用&)。输入变量在scanf(第2行)之前创建,因此根据您的指令顺序完全没有问题。也许你可以澄清一下?