微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 关于2个字节合并成一个字的问题

关于2个字节合并成一个字的问题

时间:10-02 整理:3721RD 点击:
请教各位大神,我看网上不少程序将2个字节合并成一个字是这样写的
unsigned int x;
unsigned char h,l;
x=h<<8+l;
可我觉得应该这样才对
unsigned int x;
unsigned char h,l;
x=(unsigned int)h<<8+(unsigned int)l;大家怎么看

隐式转换,直接一位之后相加也是可以的。

用(unsigned int)强制转换后,数据可能会稳定点。我一般确保数据稳定,是这样写 x=(((unsigned int)h & 0x00ff) << 8) | ((unsigned int)l & 0x00ff);

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top