Objective——C Foundation——常用结构体 (NSSRange 、NSPoint、NSsize、NSRect)

Oc为我们提供了四个结构体,定义的变量可以存在栈上和堆上。

分别是:范围:NSSRange ,  几体数据类型 : 点(NSPoint) 尺寸(NSsize) 区域(NSRect);


----------------------------------------------------------------------------------------------------------------------------------------------------------------------

<一> NSRange:   用来表示相关事物的范围。



 结构体原形:typedefstruct _NSRange

        {

           NSUInteger location;

           NSUInteger length;

        }NSRange;


NSRange:(用于存储单词或语句,在里面的位置)
location:起始位置,
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);

       NSLog ( @"%f,%f" ,point. x ,point. y );
注:x,y是值是float类型的。
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------

<三>   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,201520);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值