GO语言数组的内存

GO语言数组有一个16进制的首地址(内存地址)使用%p可以查看!
%p(以十六进制(基数为16)表示的一个值的地址,前缀为0x,字母使用小写的a-f表示)
在这里插入图片描述

package main

import "fmt"

func main() {
	arr()
}
func arr() {
	//创建数组 ---数组名  长度 类型
	var arr1 [4]int
	//数组的访问,下标设置
	arr1[0] = 1
	arr1[1] = 2
	arr1[2] = 3
	fmt.Printf("%p\n", &arr1)                           //0xc000018400
	fmt.Printf("数组第一个元素地址:%p\n", &arr1[0])              //数组第一个元素地址:0xc000018400
	fmt.Printf("数组第二个元素地址:%p\n", &arr1[1])              //数组第二个元素地址:0xc000018408
	fmt.Printf("数组第三个元素地址:%p\n", &arr1[2])              //数组第三个元素地址:0xc000018410
	fmt.Printf("数组第四个元素地址:%p\n", &arr1[3])              //数组第四个元素地址:0xc000018418
	arr1[0] = arr1[1]                                   //赋值
	fmt.Printf("查看数组第一个元素被复制后数组的地址%p\n", &arr1)         //查看数组第一个元素被复制后数组的地址0xc000018400
	fmt.Printf("查看数组首个元素被复制后的地址第一个元素的地址%p\n", &arr1[0]) //查看数组首个元素被复制后的地址第一个元素的地址0xc000018400
	//var arr7 = [...]int{1, 2, 3, 4, 5, 6}
	//fmt.Println(arr7)
}

//数字在内存中开辟的是连续的内存,数字的地址是数组的首地址也是第一个元素的地址!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值