var t1 = []string{“one”, “tow”, “three”}
fmt.Printf(“t1的内存地址 = %p\n”, &t1) //这个是变量t1的地址
fmt.Printf(“t1指向的内存地址 = %p\n”, t1)//这个是变量t1对应的切片的地址
slice1 := []int{3, 4, 5, 6, 7}
slice2 := slice1[0:1]
slice3 := slice1[1:2]
fmt.Printf("slice1 addr: %p \n", slice1) //这个就是slice1数组存储的地址所以和slice1[0]的地址相同:addr: 0xc00000e330
fmt.Printf("slice1 addr: %p \n", &slice1[0]) //addr: 0xc00000e330
fmt.Printf("slice1 addr: %p", &slice1) //这个是slice1变量名的地址 0xc000008078
fmt.Println()
fmt.Printf("slice2 addr: %p", slice2) // 0xc00000e330
fmt.Println()
fmt.Printf("slice4 addr: %p \n", slice3) // 0xc00000e338
fmt.Printf("slice1 addr: %p \n", &slice1[1]) //addr: 0xc00000e338