将2个字符转换为其ascii二进制代码
Converting 2 chars to its ascii binary code
我正在从加速度计读取字符格式的二进制数据,它由高位字节和低位字节组成。我已经很久没有使用C++了,而且通常只使用更高级别的东西。我有以下功能:
short char2short(char* hchar, char* lchar)
{
char temp[2];
temp[0] = *hchar;
temp[1] = *lchar;
如何将这些值转换为整数?据我所知,atoi的工作方式不同(例如"21"=21)。我可以把char转换成int吗?但是它是如何与高位和低位一起工作的呢?提前感谢您的帮助!
您应该将字节存储为无符号,以避免移位符号位的问题。
short char2short(unsigned char hchar, unsigned char lchar)
{
return static_cast<short>(lchar | (hchar << 8));
}
您可能还希望使用无符号短字符。这取决于你的期望。
相关文章:
- 我写的 ASCII 到二进制转换器C++向后显示二进制,如何使其正确显示?
- 将 ASCII 文件转换为 C++ 的二进制格式
- 如何将二进制字符串转换为 ASCII 字符串
- C 将二进制(P5)图像转换为ASCII(P2)图像(.pgm)
- 试图制作一个将十进制转换为二进制和ASCII C++的表
- 将2个字符转换为其ascii二进制代码
- C++-简单的二进制到ASCII二进制程序
- 在C++中构建ASCII到二进制的代码,反之亦然,并遇到了一个奇怪的错误
- 将二进制字符串转换为 ASCII 时出现问题
- ASCII 和二进制 - 按原样显示,但读取返回垃圾
- 将二进制十六进制数据转换为 ASCII 等效数据并存储在字符串中
- 验证STL文件是否为ASCII或二进制文件
- STL文件的哪种格式读取速度更快:ascii还是二进制
- 将字符串的ASCII字符十进制值转换为二进制值
- 从c++文件中读取ASCII和二进制
- 可以打开小型ASCII文件,但不能打开大型二进制文件
- 将二进制数据转换为ASCII等效,而不使用Arduino中的String对象
- 将二进制字符串转换为ASCII字符串(C++)
- 写入文本文件,二进制与ascii
- 将二进制转换为ASCII