如何将4个字符的unsigned char
数组转换为unsigned short int
。每个字符都从UART接收并存储在unsigned char
答案 0 :(得分:3)
从评论中,看起来你有四个字节的输入,每个输入都有一个4位半字节。在这种情况下,您可以使用以下内容:
unsigned short int result;
unsigned char buffer[4];
...
result = buffer[0] << 12;
result |= buffer[1] << 8;
result |= buffer[2] << 4;
result |= buffer[3];
此代码假定每个字符的高半字节为零。对于小端输入,将索引反转为降序。