Go语言的结构体布局(go语言数据结构)

网友投稿 258 2022-07-19

2.4结构体布局

结构体占用一块连续的内存。

package main

import "fmt"

type Person struct {

name string

city string

age int

}

func main() {

var p1 = &Person{

"vita",

"ShangHai",

27,

}

fmt.Printf("p1.name %p\n",&p1.name)

fmt.Printf("p1.city %p\n",&p1.city)

fmt.Printf("p1.age %p\n",&p1.age)

}

结果:

p1.name 0xc00005c360

p1.city 0xc00005c370

p1.age 0xc00005c380

Process finished with exit code 0

// 内存是以字节为单位的十六进制数

// 1字节 = 8位 = 8bit

package main

import "fmt"

type test struct {

a int8

b int8

c int8

}

func main() {

var p1 = &test{

1,2,3,

}

fmt.Printf("p1.a %p\n",&p1.a)

fmt.Printf("p1.b %p\n",&p1.b)

fmt.Printf("p1.c %p\n",&p1.c)

}

结果:

p1.a 0xc000054080

p1.b 0xc000054081

p1.c 0xc000054082

Process finished with exit code 0

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:go语言编程前景怎么样?(go语言适合开发什么项目)
下一篇:Go语言的结构体(go形容词语法结构)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~