问题描述
- 如何将数字字符串转为16进制字符串?
- 请教一个示例:
如何将数字字符串转为16进制字符串?
字符串:char str[20]=“1234567890123456”;
将中间的“789012”转换为16进制的“0C0A14”;
最后str=""1234560C0A143456""如果有描述不清的地方,请指出。
多谢!
解决方案
你先用字符串截取到 比如strstr等,""789012”
然后可以用下面这个转成十六进制字符串
sprintf( buffer%x"" s );
然后再把字符串头,更新的字符串,字符串尾连接起来,
sprintf( buffer%s%s%s"" a b c );
解决方案二:
可以先将字符串分为三个部分,“123456”,“789012”,“3456”
取出“789012” ,用atoi函数将“789012”转换为int型,在用sprintf将三部分拼接在一起,其中789012用格式化
%06X
如果位数要更改可以用
%0*X
其中*号的值从参数列表提供。
解决方案三:
字符串第7位到第10位转换?
解决方案四:
自己写个转换函数,应该不难。具体思路是解析每个字符判断然后转变后的结果再返回。
解决方案五:
16进制字符串转为 字符串
字符串转为16进制
16进制字符串转为二进制字符串
解决方案六:
你这是字符替换吧? 最笨的办法就是循环一下。
解决方案七:
16进制字符串是不包含7890吗
时间: 2024-12-03 03:57:57