Oc为我们提供了四个结构体,定义的变量可以存在栈上和堆上。
分别是:范围:NSSRange , 几体数据类型 : 点(NSPoint) 尺寸(NSsize) 区域(NSRect);
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
<一> NSRange: 用来表示相关事物的范围。
结构体原形:typedefstruct _NSRange
{
NSUInteger location;
NSUInteger length;
}NSRange;
三种赋值方式:
NSRange range;
//c语言结构体变量的赋值的方法
range.location=17;
range.length=4;
NSLog(@"%lu %lu",range.location, range.length);
//c语言结构体变量初始化的方法
NSRange range1={17,4};
NSLog(@"%lu %lu",range1.location, range1.length);
//oc的赋值方法 //最常用
range=NSMakeRange(17,4);
NSLog(@"%lu %lu",range1.location, range1.length);
cocoa提供的一个快捷函数NSMakeRange();
使用NSMakeRange()的好处是可以在任何能够使用函数的地方使用它,例如在方法调用中将其当成参数传递。
<二>NSPoint 代带平面上的点
结构体原形:
typedefstruct _NSPoint
{
float x;
float y;
}NSPoint;
三种赋值方式:
NSPoint point;
point.x=10;
point.y=20;
NSLog(@"%f,%f",point.x,point.y);
NSPoint point1={10.3,20.6};
NSLog(@"%f,%f",point1.x,point1.y);
point=NSMakePoint(10.5,11.3);
<三> NSSize 用来存储长度和宽度。尺寸。
结构体原形:
typedef struct _NSSize
{
float width;
float height;
}NSSize;
三种赋值方式:
NSSize size;
size.width=15;
size.height=20;
NSLog(@"%f %f",size.width,size.height);
NSSize size1={15,20};
NSLog(@"%f %f",size1.width,size1.height);
size=NSMakeSize(20,30);
NSLog(@"%f %f",size.width,size.height);
--------------------------------------------------------------------------------------------------------------
<四> NSRect 用来表示区域。
结构体原形:
typedef struct _NSRect
{
NSPoint origin;
NSSize size;
}NSRect;
三种赋值方式:
NSRect rect;
rect.origin.x=15;
rect.origin.y=20;
rect.size.width=8;
rect.size.height=15;
NSRect rect1={15,20,8,15};
rect =NSMakeRect(15,20, 15, 20);