整数类型的基本使用

整数的类型——有符号
类型        有无符号占用存储空间表数范围        备注
int81字节-2^7 ~ 2^7-1

①有1位是符号位,其他才是数值。

②二进制的正数比负数少一位,

    因为+0和-0都一样,

    二进制把-0借到了负数上

int162字节-2^15 ~ 2^15-1
int324字节-2^31 ~ 2^31-1
int648字节-2^63 ~ 2^63-1
整数的类型——无符号
类型        有无符号占用存储空间表数范围        备注
unit81字节0 ~ 2^8-1

①有1位是符号位,其他才是数值。

②二进制的正数比负数少一位,

    因为+0和-0都一样,

    二进制把-0借到了负数上

unit162字节0 ~ 2^16-1
unit324字节0 ~ 2^32-1
unit648字节0 ~ 2^64-1
整数的类型——其他
类型        有无符号占用存储空间表数范围        
int

32位系统4个字节

64位系统8个字节

-2^31 ~ 2^31-1

-2^63 ~ 2^63-1

unit

32位系统4个字节

64位系统8个字节

0 ~ 2^32-1

0 ~ 2^64-1

rune与int32类似-2^31 ~ 2^31-1等价int32,表示一个Unicode码
byte与unit8等价0 ~ 2^8-1当要存储字符时选用byte

整型的使用细节

(1)Golang各整数类型分:有符号和无符号,int unit的大小和系统有关

(2)Golang的整型默认声明为int型

(3)如何在程序查看某个变量的字节大小和数据类型  fmt.Printf

package main
import (
	"fmt"
	"unsafe"
)
func main(){
	var n = 100
	fmt.Printf("数据类型是%T",n)
	fmt.Printf("占用的字节数是%d",unsafe.Sizeof(n))
}

 

 

(4)Golang程序中整型变量在使用时,遵守保小不保大的原则,即:在保证程序正确运行下,尽量使用占用空间小的数据类型。

(5)bit:计算机中的最小存储单位。byte:计算机中基本存储单元

1byte = 8bit