package main
import (
"fmt"
"unsafe"
)
type A struct {
a bool
b int64
c int
}
type B struct {
b int64
a bool
c int
}
type C struct {
}
func main() {
// output 24
fmt.Println(unsafe.Sizeof(A{}))
// output 16
fmt.Println(unsafe.Sizeof(B{}))
// output 0
fmt.Println(unsafe.Sizeof(C{}))
}
结构A和B具有相同的字段,但如果以不同的顺序指定,它们会导致不同的大小。为什么?
结构体的大小C为零。系统为 分配了多少内存a := C{}?
谢谢。
PIPIONE
相关分类