一,NSRange
typedef struct _NSRange
{
NSUInteger location;
NSUInteger length;
}NSRange;
这个结构体用来表示事物的一个范围,通常字符串里的字符范围或者几何里的范围.
location表示该范围的起始位置
length表示该范围内所有的元素个数
比如"I love objective-c"中的"obj"可以用location为7,length为3的范围表示.
创建NSRange有三种方式
第一种,直接给成员赋值
NSRange range;
range.location=7;
range.length=3;
第二种是应用c语言的聚合结构赋值机制
NSRange range={7,3};或者NSRange range={.location=7,.length=3};
第三种,Foundation框架提供的
NSRange range=NSMakeRange(7,3);
使用方式如:
NSRange range=NSMakeRange(3, 7);//第一种方式
NSString *rangStr=NSStringFromRange(range);//第二种方式
NSLog(@"%@",rangStr);
NSLog(@"%li,%li",range.location,range.length);
二,NSPoint结构体--CGPoint结构体
NSPoint point=NSMakePoint(1,2);//Foundation提供的方法
NSLog(@"%@",NSStringFromPoint(point));//转化为string对象类型
NSPoint p2;//第二种方式
p2.x=3;
p2.y=4;
NSLog(@"%@",NSStringFromPoint(p2));
三,NSSize结构体--CGSize结构体
NSSize size=NSMakeSize(34, 344);//Foundation提供的方法
NSLog(@"%@",NSStringFromSize(size));//转化为string对象类型
CGSize p2;//第二种方式
p2.height=3;
p2.width=4;
NSLog(@"%@",NSStringFromSize(p2));
四,NSRect结构体
NSRect rect=NSMakeRect(1, 2, 3, 4);
NSLog (@"%@",NSStringFromRect(rect));
NSRect p2;
p2.origin.x=3;
p2.origin.y=4;
p2.size.width=5;
p2.size.height=6;
NSLog(@"%@",NSStringFromRect(p2));