16进制到ASC 的互转
<span style="font-size:24px;">//length hex的长度 asc大小是hex的两倍
//入参hex, 出参 asc,length
short hex_asc(unsigned char *hex, unsigned char *asc, long length)
{UCHAR hLowbit,hHighbit;long i;for(i=0;i<length*2;i=i+2){hLowbit=hex[i/2]&0x0f;hHighbit=hex[i/2]/16;if(hHighbit>=10)asc[i]=hHighbit+'7';elseasc[i]=hHighbit+'0';if(hLowbit>=10)asc[i+1]=hLowbit+'7';elseasc[i+1]=hLowbit+'0';}asc[length*2]='\0';return 0;
}</span>
short asc_hex(unsigned char *asc, unsigned char *hex, long pair_len)
{char src1,src2,factor1,factor2;long len;factor1 = '7';factor2 = '7';_strupr( (char *)asc );for (len=0; len < pair_len; len++) {src1 = *(asc+len*2);src2 = *(asc+len*2+1);if ((src1>='0') && (src1<='9'))factor1 = '0';else if ((src1>='A') && (src1<='F'))factor1 = '7';else return 1;if ((src2>='0') && (src2<='9'))factor2 = '0';else if ((src2>='A') && (src2<='F'))factor2 = '7';else return 1;src1 = src1 - factor1;src2 = src2 - factor2;*hex++ = (src1 << 4) | src2; }return 0;}</span>
16进制到ASC 的互转相关推荐
- JAVA里16进制和字节数组互转
大括号理的就是一个byte类型的数组,里面是3个byte类型那个的数 public static String stringToHexString(String strPart) { String h ...
- 字符串10进制、16进制、ASSIC的互转
1. 动态的10进制字符串转16进制ASSIC #include <stdio.h> #include <string.h> #include <malloc.h> ...
- 16进制String和int互转
2019独角兽企业重金招聘Python工程师标准>>> +(unsigned long)getIntFromHexString:(NSString *) str{//先以16为参数告 ...
- Swift 16进制字符串与UIColor互转
今天在写项目的时候遇到这么个问题,需要将UIColor转成16进制字符串,然后写入沙盒进行本地缓存,于是一番操作下,给UIColor加了两个扩展. 第一个convenience init方法并不陌生, ...
- 16进制和ASCII字符互转
C语言中,字符和其ASCII码是等价的,比如'A'这个字符和单字节整数65是等价的. 比如char c='A';int a=c;的话,a就是65 //函 数 名:CharToHex() //功能描 ...
- Java 16进制与byte数组互转
一个十六进制数(Hex),正好为4个二进制位.一个字节(byte)为8个二进制位.因此,一个字节可表示为两个十六进制数字.我们可以将一个byte用两个Hex表示,同理,我们也可以将两个Hex转换为一个 ...
- C# 中字符串string和字节数组byte[]的转换,16 进制字符串转 int的方法
string和byte[]互转 string转byte[] byte[] byteArray = System.Text.Encoding.Default.GetBytes(str); byte[] ...
- c语言输出16进制数转字符,(转)C语言16进制输出字符型变量问题
最近在做一个C的嵌入式项目,发现在C语言中用printf()函数打印字符型变量时,如果想采用"%x"的格式将字符型变量值以十六进制形式打印出来,会出现一个小问题,如下: char ...
- Java 字符串,byte[],16进制的字符串互转
Java 字符串,byte[],16进制的字符串互转 /** * 字符串转换成十六进制字符串 */ public static String str2HexStr(String str) { char ...
最新文章
- min聚合函数查询带有额外字段sql|dense_rank()over(partition)|+班级学生成绩最高
- android.view.ViewRoot$CalledFromWrongThreadException的解决办法
- Tech·Ed 2006博客园聚会
- Linux下的qt5.7Qftp类,[翻译] Qt QFtp功能无法被Qt 5 Network系列模块替代的说明
- 小程序里的自定义组件:组件的外部样式externalClasses的使用
- 实体类dao接口mysql_利用MyBatis生成器自动生成实体类、DAO接口和Mapping映射文件...
- 实践 config drive - 每天5分钟玩转 OpenStack(170)
- Java生成CSV文件
- DM入门之Apriori小结
- android 调用 asp.net web api,从 .NET 客户端调用 Web API (C#)
- Promise方法汇总
- 【转载】ASP.NET MVC中Controller与View之间的数据传递总结
- SQL Server Storage
- 使用Git进行Vivado版本控制
- 关于Windows美化的小结
- [转]如何学好windows c++编程 学习精髓(收集,整理)
- 学神经网络需要什么基础,深度神经网络怎么用
- 一文读懂《医疗器械定期风险评价报告》撰写要点
- 基于机器学习的车牌识别系统
- 在mysql中查询时间最小的一条记录