共计 218 个字符,预计需要花费 1 分钟才能阅读完成。
出错的用法
package main
import "fmt"
var a *string
func main() {fmt.Println(*a)
}
正确的用法
package main
import "fmt"
var a = new(string)
func main() {fmt.Println(*a)
}
起因
var a *string
只是 申明 了变量 a
,并没有 初始化 (分配内存),没有分配内存,*
天然是取不到地址的。
所以在申明的同时应用内建函数 new
分配内存后再赋值即可解决。
正文完