文档章节

oc 16进制字符串与10进制的转换 两行代码搞定

r
 rshengwudi
发布于 2016/03/01 22:37
字数 518
阅读 126
收藏 0

    下面是一个帐号的转换,需要给渔船设备传递16进制的字符串,之后经设备进行北斗与服务间的通信,下面是转换的方式:

NSLog(@"%x",50038);
2016-03-01 22:16:58.861 testStr[3855:369016] 12a401927

因为需要,整好必须是4个子节,然后16进制位8位,所以可以用以下方法进行转换

NSLog(@"%.8x",50038);
2016-03-01 22:22:27.647 testStr[3905:374086] 0000c376

这样的对比就比较明显了,.8x表示不足8位的在前面补0

反之需要对16进制转成10进制进行处理,也很简单,当初用了各种方法,比如单个截取然后转乘100进制,效率低下且容易出错,然而明明有更好的方法可以解决的,下面给出方法

NSLog(@"%ld",strtoul([@"0000c376" UTF8String],0, 16));
2016-03-01 22:29:57.755 testStr[3978:380678] 50038

原则上16进制转成10进制调用了c语言的函数,具体以下,见下--

strtoul()会将参数nptr字符串根据参数base来转换成无符号的长整型数。参数base范围从2至36,或0。参数base代表采用的进制方式,如base值为10则采用10进制,若base值为16则采用16进制数等。当base值为0时会根据情况选择用哪种进制:如果第一个字符是'0',就判断第二字符如果是‘x’则用16进制,否则用8进制;第一个字符不是‘0’,则用10进制。一开始strtoul()会扫描参数nptr字符串,跳过前面的空格字符串,直到遇上数字或正负符号才开始做转换,再遇到非数字或字符串结束时('')结束转换,并将结果返回。若参数endptr不为NULL,则会将遇到不合条件而终止的nptr中的字符指针由endptr返回。

© 著作权归作者所有

共有 人打赏支持
r
粉丝 4
博文 6
码字总数 851
作品 0
宁波
私信 提问
[编程题]进制转换

1、题目内容 [编程题]进制转换 2、题目解析 方法1:将十六进制的数值字符串转换成十进制字符串,用Integer类的 public static int parseInt(String s,int radix) throws NumberFormatExcept...

笨拙的小Q
2016/04/22
267
0
strtol函數的用法(进制转换)

相关函数: atof, atoi, atol, strtod, strtoul 表头文件: #include <stdlib.h> 定义函数: long int strtol(const char nptr, char *endptr, int base) 函数说明: strtol()会将参数nptr字符串......

電泡泡
2012/10/10
0
0
Java MD5加密原理分析及代码示例

由于MD5的不可逆,所以有的网站会把密码转换MD5,然后存储。但是这种算法并不是100%严密的,参考MD5 - 维基百科 下面就写写MD5在Java中的使用。 主要分为四步 定义一个char数组,存储16进制的...

Mr_river
2015/11/27
1K
1
Xcode调试命令大全 (LLDB Cheatsheet)

这是一个LLDB的常用命令表, 涵盖了平时Debug时用到的所有命令,在开发中能够帮助你更快的定位和调试bug Getting help(获取帮助) 列出所有的命令和别名 获取命令的帮助文档 获取子命令的帮助...

SSBun
2017/11/16
0
0
PHP实现IP–数字互相转换

PHP实现IP–数字互相转换 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org......

蜗牛奔跑
2015/09/09
109
0

没有更多内容

加载失败,请刷新页面

加载更多

深度学习中的注意力机制

最近两年,注意力模型(Attention Model)被广泛使用在自然语言处理、图像识别及语音识别等各种不同类型的深度学习任务中,是深度学习技术中最值得关注与深入了解的核心技术之一。 本文以机器...

火力全開
13分钟前
1
0
去除文件中

最近生成的文件中出现了<feff>乱码,而且单个文件中出现不止一次,在vim中打该文件显示<feff>,而在idea中则显示一个“-”,对数据处理造成了极大的困扰,通过使用其它编辑器打开发现,Windo...

休辞醉倒
14分钟前
0
0
想搞懂大数据就看这篇文章就够了!

互联网时代的到来,各种专业词汇术语充斥着我们的大脑,大数据,人工智能更是当下时代的热点潮流,很多传统企业都徘徊穿梭于这个潮流当中,传统广告的褪去,移动互联网时代的大数据精准整合营...

董黎明
17分钟前
1
0
go module 初体验

尽管官方的go module比较好用,但由于很多库下载不了,所以需要用到以下配置 export PATH=/mnt/d/download/go/bin/:$PATH export GOPATH=/home/fish/dipamkara/ #export GOPATH=/mnt/d/work...

LoveCupid
20分钟前
1
0
【小白学游戏常用算法】二、A*启发式搜索算法

  在上一篇博客中,我们一起学习了随机迷宫算法,在本篇博客中,我们将一起了解一下寻路算法中常用的A*算法。   通常情况下,迷宫寻路算法可以使用深度优先或者广度优先算法,但是由于效...

hejunbinlan
23分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部