我正在尝试学习Go,但是在尝试一个简单的for循环时,我发现很难让它工作。如果我在main函数中定义变量a,则此代码不会编译,它会给出一个错误&a; a a声明但未使用'。我不明白什么时候必须声明变量,什么时候不能声明。感谢。
package main
import "fmt"
func main() {
for a:=0;a<4;a++ {
fmt.Printf("value of a is %d\n",a)
}
答案 0 :(得分:2)
您有两种选择
明确声明变量,然后使用
var a int
a = 0
在一个语句中声明和赋值,而不必指定类型(推断)
a:=0
请注意=
和:=
之间的差异。如果您使用:=
两次,则将其视为重新声明。换句话说,=
仅用于赋值,而:=
仅用于声明和赋值。
答案 1 :(得分:1)
原因是,您有'未使用的错误',因为表达式a:=0
在循环范围内声明了一个具有相同名称的新变量。如果您已经在循环之前声明了变量'a',请将其更改为for a=0; a<4; a++
(不带冒号)。