Go語言的整數(shù)類型用于存放整數(shù)值色冀,如12潭袱,-34,5678等
類型 | 有無符號(hào) | 占用空間 | 表數(shù)范圍 | 備注 |
---|---|---|---|---|
int8 | 有 | 1字節(jié) | -128~127 | |
int16 | 有 | 2字節(jié) | -215~215-1 | |
int32 | 有 | 4字節(jié) | -231~231-1 | |
int64 | 有 | 8字節(jié) | -263~263-1 | |
uint8 | 無 | 1字節(jié) | 0~255 | |
uint16 | 無 | 2字節(jié) | 0~216-1 | |
uint32 | 無 | 4字節(jié) | 0~232-1 | |
uint64 | 無 | 8字節(jié) | 0~264-1 | |
int | 有 | 32位系統(tǒng)4個(gè)字節(jié) 64位系統(tǒng)8個(gè)字節(jié) | -231~231-1 -263~263-1 | |
uint | 無 | 32位系統(tǒng)4個(gè)字節(jié) 64位系統(tǒng)8個(gè)字節(jié) | 0~232-1 0~264-1 | |
rune | 有 | 與int32一樣 | -231~231-1 | 表示一個(gè)Unicode碼锋恬,存儲(chǔ)多字節(jié) |
byte | 無 | 與uint8等價(jià) | 0~255 | 存儲(chǔ)英文字符時(shí)使用 |
// int8
fmt.Println("MaxInt8:", math.MaxInt8)
fmt.Println("MinInt8:", math.MinInt8)
// int16
fmt.Println("MaxInt16:", math.MaxInt16)
fmt.Println("MinInt16:", math.MinInt16)
// int32
fmt.Println("MaxInt32:", math.MaxInt32)
fmt.Println("MinInt32:", math.MinInt32)
// int64
fmt.Println("MaxInt64:", math.MaxInt64)
fmt.Println("MinInt64:", math.MinInt64)
// uint8
fmt.Println("MaxUint8:", math.MaxUint8)
// uint16
fmt.Println("MaxUint16:", math.MaxUint16)
// uint32
fmt.Println("MaxUint32:", math.MaxUint32)
// uint64
fmt.Println("MaxUint64:", uint64(math.MaxUint64))
5.5.2 整數(shù)類型的使用細(xì)節(jié)
Go語言各整數(shù)類型分為:有符號(hào)(int)與無符號(hào)(uint)
Go語言整型默認(rèn)聲明為int型
如何在程序中查看某個(gè)變量的字節(jié)大小和數(shù)據(jù)類型
Go語言中整型變量在使用時(shí)屯换,遵守保小不保大的原則,即:在保證程序正確運(yùn)行下与学,盡量使用占用空間小的數(shù)據(jù)類型彤悔。如:年齡
bit:計(jì)算機(jī)中最小的存儲(chǔ)單位。byte:計(jì)算機(jī)中基本存儲(chǔ)單元索守。1 byte = 8 bit
package main
import (
"fmt"
"unsafe"
)
func main() {
var n1 = 100
fmt.Printf("n1的類型%T\n", n1)
var n2 int64 = 100
fmt.Printf("n2的類型%T晕窑,n2占用的字節(jié)數(shù)是%d\n", n2, unsafe.Sizeof(n2))
var age byte = 90
fmt.Printf("age的類型%T,age占用的字節(jié)數(shù)是%d\n", age, unsafe.Sizeof(age))
}
運(yùn)行效果如下圖:
[上一篇:八卵佛、浮點(diǎn)類型(待更新)]