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"