二进制转16进制字符串和16进制字符串转二进制的C语言实现
//二进制转16进制字符串,长度会翻倍
void ByteToHexStr(const unsigned char* source, char* dest, int sourceLen);
//16进制字符串转二进制,长度减半
void HexStrToByte(const char* source, unsigned char* dest, int sourceLen);
//---------------------------------------
//字节流转换为十六进制字符串
void ByteToHexStr(const unsigned char* source, char* dest, int sourceLen)
{
short i;
unsigned char highByte, lowByte;
for (i = 0; i < sourceLen; i++)
{
highByte = source[i] >> 4;
lowByte = source[i] & 0x0f;
highByte += 0x30;
if (highByte > 0x39)
dest[i * 2] = highByte + 0x07;
else
dest[i * 2] = highByte;
lowByte += 0x30;
if (lowByte > 0x39)
dest[i * 2 + 1] = lowByte + 0x07;
else
dest[i * 2 + 1] = lowByte;
}
return;
}
//十六进制字符串转换为字节流
void HexStrToByte(const char* source, unsigned char* dest, int sourceLen)
{
short i;
unsigned char highByte, lowByte;
for (i = 0; i < sourceLen; i += 2)
{
highByte = toupper(source[i

本文详细介绍了如何使用C语言和JAVA语言进行二进制与16进制字符串之间的转换。提供了具体的代码实现,包括二进制转16进制字符串以及16进制字符串转二进制的方法。
最低0.47元/天 解锁文章
3255

被折叠的 条评论
为什么被折叠?



