Go:int、int8、int16、int32、int64
PHP:int
php声明一个整型:
$a = 123; // $变量 = 值 分号
Go声明一个整型:
var a int // var 变量名 变量类型(不需要分号)
Go批量声明一个整型:
var (
a int
b int8
c int16
)
Go简短的写法:
a := 100
a,b,c := 100,200,300 //多个同时赋值
int、int8、int16、int32、int64的区别:
package main
import (
"fmt"
"unsafe"
)
func main() {
var a int
a = 100
fmt.Print(a)
var b int = 200
fmt.Println(b)
c := 300
fmt.Println(c)
d,f,g := 100,200,300
fmt.Println(d,f,g)
var i1 int = 1
var i2 int8 = 2
var i3 int16 = 3
var i4 int32 = 4
var i5 int64 = 5
fmt.Println(i1)
fmt.Println(i2)
fmt.Println(i3)
fmt.Println(i4)
fmt.Println(i5)
fmt.Println(unsafe.Sizeof(i1))
fmt.Println(unsafe.Sizeof(i2))
fmt.Println(unsafe.Sizeof(i3))
fmt.Println(unsafe.Sizeof(i4))
fmt.Println(unsafe.Sizeof(i5))
}
图截不全,下面是打印的数据,上面是源码
![](https://img.haomeiwen.com/i3707239/537cc114aa067142.jpg)
unsafe.Sizeof官方解释:Sizeof takes an expression x of any type and returns the size in bytes of a hypothetical variable v as if v was declared via var v = x. The size does not include any memory possibly referenced by x. For instance, if x is a slice, Sizeof returns the size of the slice descriptor, not the size of the memory referenced by the slice. 意思就是占的大小,你会发现int居然占8字节
小伙伴如果看到错误和见解希望指出,难免有理解错的地方(努力学习Go-ing).
网友评论