如何将go中的单个uint32 var拆分为两个uint16 var,分别代表16个MSB和16个LSB ?
下面是我要做的事情:
var number uint32
var a uint16
var b uint16
number = 4206942069
现在如何将number
中的16个MSB分配到a
中,将16个LSB分配到b
中呢?
使用以下代码将number
中的16位最高有效位分配给a
, 16位最低有效位分配给b
:
a, b := uint16(number>>16), uint16(number)
在操场上跑。