1.分割字符串

NSString * str1 = @"123/456";

NSArray * arr1 = [str1 componentsSeparatedByString:@"/"];  //根据 "/" 把字符串分割

2.截取字符串(字符串下标从0开始数)

(1)截取到第N位(不包含第N位)

NSString * str = @"123456";

NSString * str1 = [str substringToIndex: 3];

str1的结果为:123

(2)从第N位开始截取,直到最后(包含第N位)

NSString * str = @"123456";

NSString * str1 = [str substringFromIndex:3];

str1的结果为:456

(3)从第N位开始截取,截取到第M位

NSString * str = @"123456";

NSString * str1 = [str substringWithRange:NSMakeRange(2,2)];

str1的结果为:34

3.动态分配内存(malloc)

详细解析参考(http://www.cnblogs.com/Alex-Phoenix/p/4654201.html).

一般是用于创建一个char * 指针的时候没有初始化内存指向,用malloc动态的分配内存地址.

char *p = malloc(1000);//传参,这里是1000字节.

  p[0];//+1是加1个字节得到长度(这里0是指第一个).

 通过p[x]可以使用他的每一个字节空间.

4.内存空间初始化(memset)

memset()的深刻内涵:用来对一段内存空间全部设置为某个字符,一般用在对定义的字符串进行初始化为‘ ’或‘/0’

memset
    原型:extern void *memset(void *buffer, int c, int count);
    用法:#i nclude
    功能:把buffer所指内存区域的前count个字节设置成字符c。
    说明:返回指向buffer的指针。

 char str[100];
memset(str,0,100); 5.内存拷贝(memcpy) 原型:extern void *memcpy(void *dest, void *src, unsigned int count);
用法:#i nclude
功能:由src所指内存区域复制count个字节到dest所指内存区域。
说明:src和dest所指内存区域不能重叠,函数返回指向dest的指针。

char m[100] = "ertyuuiiiioooopoppppppppuiutyuytuytuytu";

char n[50] = "1234567890";

memcpy(m, n, 10);

//输出结果

m = "1234567890oooopoppppppppuiutyuytuytuytu"

 

ios开发中字符串的常用功能总结的更多相关文章

  1. iOS开发中对于一些常用的相对路径(持续更新)

    1.iOS开发的证书的描述文件放置地点  ~/Library/MobileDevice/Provisioning Profiles 2.$(SRCROOT)代表的是这个项目文件夹所在的位置  $(PR ...

  2. iOS开发中那些高效常用的宏

    #ifndef MacroDefinition_h #define MacroDefinition_h //-------------------获取设备大小--------------------- ...

  3. 浅谈iOS开发中多语言的字符串排序

    一.前言 在iOS开发中,一个经常的场景是利用tableview展示一组数据,以很多首歌曲为例子.为了便于查找,一般会把这些歌曲按照一定的顺序排列,还会加上索引条以便于快速定位. 由于歌曲名可能有数字 ...

  4. iOS开发中WiFi相关功能总结

    http://www.cocoachina.com/ios/20160715/17022.html 投稿文章,作者:Haley_Wong(简书) 查漏补缺集是自己曾经做过相关的功能,但是重做相关功能或 ...

  5. iOS开发中打电话发短信等功能的实现

    在APP开发中,可能会涉及到打电话.发短信.发邮件等功能.比如说,通常一个产品的"关于"页面,会有开发者的联系方式,理想情况下,当用户点击该电话号码时,能够自动的帮用户拨出去,就涉 ...

  6. iOS开发中提交带有中文或特殊字符串的参数

    iOS开发中,与后台进行数据交换是一个很常见的场景. 在web开发中,对于我们提交的地址,浏览器会负责进行decode,但是在ios中,必须要自己手动来实现.否则我们拼接出的网址在包括中文.特殊字符串 ...

  7. iOS开发中文件的上传和下载功能的基本实现-备用

    感谢大神分享 这篇文章主要介绍了iOS开发中文件的上传和下载功能的基本实现,并且下载方面讲到了大文件的多线程断点下载,需要的朋友可以参考下 文件的上传 说明:文件上传使用的时POST请求,通常把要上传 ...

  8. iOS开发中常用的数学函数

    iOS开发中常用的数学函数 /*---- 常用数学公式 ----*/ //指数运算 3^2 3^3 NSLog(,)); //result 9 NSLog(,)); //result 27 //开平方 ...

  9. ios开发中的小技巧

    在这里总结一些iOS开发中的小技巧,能大大方便我们的开发,持续更新. UITableView的Group样式下顶部空白处理 //分组列表头部空白处理 UIView *view = [[UIViewal ...

随机推荐

  1. C#学习-属性是对字段的扩展

    属性是对字段的扩展. 根据面向对象语言的封装思想,字段最好设为private,因为这样可以防止客户端直接对字段进行篡改,从而保证了内部成员的完整性. 于是为了访问类中的私有字段,C#提供了属性这种机制 ...

  2. Windows Azure 搭建网络代理 Proxy

    额 题目起的有点大 其实就是在 Linux 上使用代理 不过是用的 Azure 上的 Liunx 虚拟机而已 如何在 Azure 上搭建 VPN 见上篇:http://www.cnblogs.com/ ...

  3. Java基础知识➣集合整理(三)

    概述 集合框架是一个用来代表和操纵集合的统一架构.所有的集合框架都包含如下内容: 接口:是代表集合的抽象数据类型.接口允许集合独立操纵其代表的细节.在面向对象的语言,接口通常形成一个层次. 实现(类) ...

  4. select2插件 多选框动态初始化值

    转自https://blog.csdn.net/yiyiwyf/article/details/53521980 上一篇讲了select2的多选和大标题设置. 这周做到了修改的功能,需要将旧数据的选项 ...

  5. 【BZOJ2402】陶陶的难题II 分数规划+树链剖分+线段树+凸包

    题解: 首先分数规划是很明显的 然后在于我们如何要快速要求yi-mid*xi的最值 这个是看了题解之后才知道的 这个是斜率的一个基本方法 我们设y=mid*x+z 那么显然我们可以把(x,y)插入到一 ...

  6. nginx 设置自签名证书以及设置网址http强制转https访问

    自签名证书可以在自己的内网环境或者非对外环境使用,保证通信安装 1.生产证书 直接使用脚本生产: 中途会提示书如1次域名和4次密码,把一下文件保存为sh文件,赋予x权限后 直接执行,根据提示输入. # ...

  7. aop日志记录

    1.自定义 package cc.mrbird.common.annotation; import java.lang.annotation.ElementType; import java.lang ...

  8. .net core cookie登录和session的 DataProtectionProvider 加入 redis

    string redisConnectionString = Configuration.GetSection("Storage:Redis").GetValue<strin ...

  9. docker删除名字为none的imgae

    docker rmi $(docker images -f "dangling=true" -q)

  10. 数学建模:1.概述& 监督学习--回归分析模型

    数学建模概述 监督学习-回归分析(线性回归) 监督学习-分类分析(KNN最邻近分类) 非监督学习-聚类(PCA主成分分析& K-means聚类) 随机算法-蒙特卡洛算法 1.回归分析 在统计学 ...