【请教】【10进制】【16进制】【字节】【双字】【转换】

时间:2022-09-07 22:44:36
如题,从串口得到一组16进制数据,我转换成16进制的时候,他总会以双字的形式转换。
eg:-124 ----ffffff84(双字),我想得到的只是84(字节)。
当传输过来的数据在-1 ~ -128的时候我就会得到ffffffxx的数据,请问应该如何处理

3 个解决方案

#1


你定义的是int型吧

#2


负数,前面肯定是fffff,要想去掉,和很简单 让 这个数 与 上 0x000000ff
代码如下  
outNun=sourceNum & 0x000000ff

#3


引用 2 楼 wwwzys 的回复:
负数,前面肯定是fffff,要想去掉,和很简单 让 这个数 与 上 0x000000ff
代码如下  
outNun=sourceNum & 0x000000ff

你是对的,

#1


你定义的是int型吧

#2


负数,前面肯定是fffff,要想去掉,和很简单 让 这个数 与 上 0x000000ff
代码如下  
outNun=sourceNum & 0x000000ff

#3


引用 2 楼 wwwzys 的回复:
负数,前面肯定是fffff,要想去掉,和很简单 让 这个数 与 上 0x000000ff
代码如下  
outNun=sourceNum & 0x000000ff

你是对的,