消息关闭
    暂无新消息!

C语言两个byte 赋给一个变量的问题

问题作者 : 榕叶2017-07-23发布
我现在有两个byte1  0x3F      byte 2 0xF0
有一定义好的变量 int  data;

符合把两个byte1 byte2  赋给data

data  在这里是两个字节吧

我尝试过data=byte1<<16+byte2    -------失败
        或者data=byte1<<4+byte2       -------失败
        或者data=byte1<<8+byte2       -------失败

我最终希望的结果是 data= 0x3FF0  

请大家赐教。谢谢

3个回答

︿ 0
data = ((unsigned int)byte1 << 8) + byte2;

另外注意下byte1和byte2的类型
︿ 0
算加法也可以,不过 需要注意 << 运算符的优先级 低于 + 

 data = (byte1 << 8) + byte2;