在下面的代码中:
func main() {
foo := "bar"
fooPointer := &foo
fmt.Println(&foo, &fooPointer)
}
&foo
和&fooPointer
的内存地址不应该相同吗?我的理解是:
*variable
是指向variable
的值的指针&variable
将指针返回到variable
最佳答案
没有。&foo
是foo
的地址。&fooPointer
是fooPointer
的地址。fooPointer
的值等于&foo
,但是fooPointer
的地址是其他地址。