请问如何得到int64的最大值?

karl_zhao · · 10481 次点击
``` const ( MaxInt8 = 1<<7 - 1 MinInt8 = -1 << 7 MaxInt16 = 1<<15 - 1 MinInt16 = -1 << 15 MaxInt32 = 1<<31 - 1 MinInt32 = -1 << 31 MaxInt64 = 1<<63 - 1 MinInt64 = -1 << 63 MaxUint8 = 1<<8 - 1 MaxUint16 = 1<<16 - 1 MaxUint32 = 1<<32 - 1 MaxUint64 = 1<<64 - 1 ) ``` 这个是golang math包里的定义,也就是int64最大值可以直接用math.MaxInt64
#5
更多评论
已找到一种方式,就是通过63bit的uint64转成int64,但是不清楚为什么 int64(math.Exp2(float64(64-1))-1) 这样不行?是Exp2内置行数的bug么?
#1
esverde
至乐活身,唯无为几存
标准库里有math.MaxInt64,是1<<63 - 1,参见链接https://pkg.go.dev/math#MaxInt64
#2