您好,欢迎来到九壹网。
搜索
您的当前位置:首页C语言版的16进制与字符串互转函数

C语言版的16进制与字符串互转函数

来源:九壹网
C语⾔版的16进制与字符串互转函数

/*

// C prototype : void StrToHex(BYTE *pbDest, BYTE *pbSrc, int nLen)// parameter(s): [OUT] pbDest - 输出缓冲区// [IN] pbSrc - 字符串

// [IN] nLen - 16进制数的字节数(字符串的长度/2)// return value:

// remarks : 将字符串转化为16进制数*/

void StrToHex(BYTE *pbDest, BYTE *pbSrc, int nLen){

char h1,h2;BYTE s1,s2;int i;

for (i=0; ih1 = pbSrc[2*i];h2 = pbSrc[2*i+1];s1 = toupper(h1) - 0x30;if (s1 > 9) s1 -= 7;

s2 = toupper(h2) - 0x30;if (s2 > 9) s2 -= 7;

pbDest[i] = s1*16 + s2;}}

/*

// C prototype : void HexToStr(BYTE *pbDest, BYTE *pbSrc, int nLen)// parameter(s): [OUT] pbDest - 存放⽬标字符串// [IN] pbSrc - 输⼊16进制数的起始地址// [IN] nLen - 16进制数的字节数// return value:

// remarks : 将16进制数转化为字符串*/

void HexToStr(BYTE *pbDest, BYTE *pbSrc, int nLen){

char ddl,ddh;int i;

for (i=0; iddh = 48 + pbSrc[i] / 16;ddl = 48 + pbSrc[i] % 16;if (ddh > 57) ddh = ddh + 7;if (ddl > 57) ddl = ddl + 7;pbDest[i*2] = ddh;pbDest[i*2+1] = ddl;}

pbDest[nLen*2] = '\\0';}

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- 91gzw.com 版权所有 湘ICP备2023023988号-2

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务