< 返回首页

标哥的笔记,是记录在日常学习技术和日常开发中那些年遇到过的坑!本站为新站,原"标哥的技术博客"中的文章会慢慢移到本站,欢迎收藏本站!
在使用本站过程中,有任何建议请联系标哥! 另,承接App开发、网站开发和微信小程序开发!欢迎联系我们


iOS任意进制转换

 作者:标哥    发布日期:2017-01-12 12:34    阅读量:1064次
 

今天在处理进制转换时,突然看到iOS里面的一个很神奇的函数:strtoul,这可以进行进制的转换。

本篇文章的主题就是讲讲这个strtoul神奇的函数,如何帮助我们快速进行任意进制转换。

strtoul

函数声明如下:

unsigned long strtoul(const char *, char **, int);

从这个函数名称,大概可以猜出来这个函数的意思是字符串转换成无符号长整型。如何看出来,这么看:str-to-ul,再补全就是string-to-unsign long。

这是C语言函数,参数说明如下:

  • 参数一:const char *类型,表示字符串的起始地址

  • 参数二:表示字符串有效数字的结束地址,传0或者NULL表示不接收

  • 参数三:转换基数。当base=0,自动判断字符串的类型,并按10进制输出,例如0xa,就会把字符串当做16进制处理,输出的为10

例子

// s是15
unsigned long s =  strtoul([[@"F" substringWithRange:NSMakeRange(0, 1)] UTF8String], 0, 16);

经验+1,记录下来,下次可以直接拿过来用哦!


承接:ThinkPHP项目开发、网站项目开发、微信项目开发、微信小程序项目开发、App开发,欢迎联系标哥QQ632840804