1. 常见的值类型和引用类型分别有哪些?
值类型:基本数据类型 int 系列, float 系列, bool, string 、数组和结构体struct,使用这些类型的变量直接指向存在内存中的值,值类型的变量的值通常存储在栈中。
引用类型:指针、slice切片、map、管道chan、interface 等都是引用类型
1. 值类型和引用类型如何获取指针地址
func change(arr []int) {
arr[0] = 7
fmt.Println(arr) // [7 2 3]
}
func change2(arr [3]int) {
arr[0] = 7
fmt.Println(arr) // [7 2 3]
}
func main() {
//值类型
x := [3]int{1,2,3}
change2(x)
fmt.Println(x) // [1 2 3] // 并不是你以为的 [7 2 3]
fmt.Printf("%p\n",&x) //0xc000014150
//引用类型
xx := []int{1,2,3}
change(xx)
fmt.Println(xx) // [7 2 3] // 切片是引用类型,使用指针传值
fmt.Printf("%p\n",xx) // 0xc000014198
}最后
以上就是每日一库最近收集整理的关于golang值类型和引用类型如何获取指针地址的全部内容,更多相关golang值类型和引用类型如何获取指针地址内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复