gpt4 book ai didi

go - Golang中int8、int16、int32分别分配了多少内存?

转载 作者:IT王子 更新时间:2023-10-29 00:43:14 27 4
gpt4 key购买 nike

<分区>

我有一段简单的代码,我在其中为 int8int16int32int64 分配内存类型并打印出变量的地址:

package main

import (

"fmt"
"runtime"
)

func main() {

fmt.Println(runtime.Compiler, runtime.GOARCH, runtime.GOOS)

var i8 *int8
var i16 *int16
var i32 *int32
var i64 *int64

fmt.Println(&i8)
fmt.Println(&i16)
fmt.Println(&i32)
fmt.Println(&i64)

}

这是我收到的输出:

gc amd64 darwin
0xc00008a020
0xc00008a028
0xc00008a030
0xc00008a038

从这里我可以得出结论,只有 int16 使用 4 个字节,其他类型使用 8 个字节。

我的推理和检查分配的内存大小的方法是否正确?

如果是,在64位架构系统上使用int8int32有什么好处?

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com