0x1<<3的意思是将1左移3位,左移后的结果是8。C++语言中以0x开头接0~9和a~f(同A~F)表示的数为十六进制数,0x1转换为十进制数即为1<<这里表示移位操作,如1<<3表示1在二进制的状态下左移三位,左移后右侧补0。
0x1代表 0001 <<3 代表左移3位结果是1000
十六进制的0x1左移3位
将16进制的数3以位形式向右位移3位。