unsafe.Sizeof()
func Sizeof(v ArbitraryType) uintptr
Sizeof返回类型v本身数据所占用的字节数。返回值是“顶层”的数据占有的字节数。例如,若v是一个切片,它会返回该切片描述符的大小,而非该切片底层引用的内存的大小。
实例:
package main
import (
"fmt"
"unsafe"
)
func main() {
var a int = 1
var b bool = true
fmt.Println(unsafe.Sizeof(a))
fmt.Println(unsafe.Sizeof(b))
var c float64 = 1.0
fmt.Println(unsafe.Sizeof(c))
var d uint8= 5
fmt.Println(unsafe.Sizeof(d))
var f byte = 1
fmt.Println(unsafe.Sizeof(f))
}
分别测试 :int; bool;float64;uint8;byte的内存
得出 :
- int : 8
- bool :1
- float : 8
- uint8 : 1
- byte :1