Golang的常用常量

int

二进制的首位为符号位,0表示正数,1表示负数。因此对uint(0)按位求反,再向右移动一位(将首位的1右移后首位变为0),得到最大值。

同理,对最大值按位求反,其二进制首位变为1,其余位变为0,得到最小值。

 

INT_MAX最大值: int(^uint(0) >> 1)

INT_MIN: ^int(^uint(0) >> 1)

 

uint

uint 最小值为0,其的二进制表示的所有位都为0。那么其最大值的二进制表示的所有位都为1。

UINT_MAX: ^uint(0)

UINT_MIN: 0