正文
BIN转换成HEX格式及HEX转换成BIN的两个函数接口
小程序:扫一扫查出行
【扫一扫了解最新限行尾号】
复制小程序
【扫一扫了解最新限行尾号】
复制小程序
unsigned char HEX2BYTE(unsigned char hex_ch)
{
if (hex_ch >= '' && hex_ch <= '')
{
return hex_ch - '';
} if (hex_ch >= 'a' && hex_ch <= 'f')
{
return hex_ch - 'a' + ;
} if (hex_ch >= 'A' && hex_ch <= 'F')
{
return hex_ch - 'A' + ;
} return 0x00;
}unsigned char _4BIT2HEX(unsigned char part_cn)
{
if (part_cn >= ) {
return (unsigned char )(part_cn - + 'A');
} else {
return (unsigned char )(part_cn + '');
}
}void StrToHex(const unsigned char* in, long inlen, unsigned char* out, long* outlen)
{
*outlen = inlen/;
memset(out, , *outlen);
for (int i = ; i < *outlen; i ++) {
out[i] = (HEX2BYTE(in[i*]) << ) | HEX2BYTE(in[i* + ]);
}
}void HexToStr(const unsigned char* in, long inlen, unsigned char* out, long* outlen)
{
*outlen = inlen*;
memset(out, , *outlen + );
for (int i = , j = ; i < *outlen; i ++, i++, j++) {
out[i] = _4BIT2HEX(((in[j]) & 0xF0)>>);
out[i+] = _4BIT2HEX(((in[j]) & 0x0F));
}
}