一,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));

Foundation--结构体的更多相关文章

  1. Objective-C( Foundation框架 一 常见的结构体)

    常见的结构体 (NSPoint,CGPoint).(NSRange,CGRange).(NSSize,CGSize) 苹果官方推荐使用CG开头的结构体 NSRange是Foundation框架中常见的 ...

  2. foundation框架—结构体

    Foundation框架—结构体 一.基本知识 Foundation—基础框架.框架中包含了很多开发中常用的数据类型,如结构体,枚举,类等,是其他ios框架的基础. 如果要想使用foundation框 ...

  3. Objective-C:Foundation框架-结构体

    在Foundation中定义了很多常用结构体类型来简化我们的日常开发,这些结构体完全采用Objective-C定义,和我们自己定义的结构体没有任何区别,之所以由框架为我们提供完全是为了简化我们的开发. ...

  4. 13.Object-C--浅谈Foundation框架常用的结构体

    ------- android培训.iOS培训.期待与您交流! ---------- 昨天学习了Foundation框架中常用的结构体,下面我简单的总结一下,如果错误麻烦请留言指正,谢谢! Found ...

  5. iOS Foundation框架简介 -1.常用结构体的用法和输出

    1.安装Xcode工具后会自带开发中常用的框架,存放的地址路径是: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.plat ...

  6. 李洪强iOS开发之Foundation框架—结构体

    Foundation框架—结构体 一.基本知识 Foundation—基础框架.框架中包含了很多开发中常用的数据类型,如结构体,枚举,类等,是其他ios框架的基础. 如果要想使用foundation框 ...

  7. 从头开始-07.Foundation框架常用结构体

    一.Foundation框架常用结构体NSRange\CGRange.NSPoint\CGPoint.NSSize\CGSize. NSRect\CGRect 的使用 1.  基本使用: //NSRa ...

  8. 「Foundation」结构体

    一.基本知识 Foundation—基础框架.框架中包含了很多开发中常用的数据类型,如结构体,枚举,类等,是其他ios框架的基础. 如果要想使用foundation框架中的数据类型,那么包含它的主头文 ...

  9. iOS Foundation框架 -1.常用结构体的用法和输出

    1.安装Xcode工具后会自带开发中常用的框架,存放的地址路径是: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.plat ...

  10. Foundation框架 - 结构体

    一.基础知识 如果要想使用 Foundation 框架的数据类型,那么包含它的主头文件就可以了.即 #import <Foundation/Foundation.h> 补充: Core F ...

随机推荐

  1. python 判断一个数字是否为4的幂

    def is_Power_of_four(n): while n and not (n & 0b11): n >>= ) print(is_Power_of_four()) pri ...

  2. python 删除元组元素

    #create a tuple tuplex = "w", "j" ,"c", "e" print(tuplex) #t ...

  3. editplus5激活码

    editplus5激活码 name: Vovan code: 3AG46-JJ48E-CEACC-8E6EW-ECUAW 转自:https://blog.csdn.net/webfront/artic ...

  4. stack_01

    A.添加/移除 A.1.void stack::push(elemValue); // 栈头 添加元素 A.2.void stack::pop(); // 栈头 移除第一个元素 B.随机存取 C.数据 ...

  5. Android 利用ViewPager、Fragment、PagerTabStrip实现多页面滑动效果

    本文主要介绍如何利用ViewPager.Fragment.PagerTabStrip实现多页面滑动效果.即google play首页.新浪微博消息(at.评论.私信.广播)页面的效果.ViewPage ...

  6. 雷林鹏分享:C# 类(Class)

    C# 类(Class) 当您定义一个类时,您定义了一个数据类型的蓝图.这实际上并没有定义任何的数据,但它定义了类的名称意味着什么,也就是说,类的对象由什么组成及在这个对象上可执行什么操作.对象是类的实 ...

  7. linux之CentOS7在线安装Mysql

    下载和添加仓库     1.wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm     2.sudo rpm -iv ...

  8. CentOS 配置Tomcat服务脚本

    #!/bin/bash # description: Tomcat7 Start Stop Restart # processname: tomcat7 # chkconfig: JAVA_HOME= ...

  9. Change-free CodeForces - 767E (贪心)

    题目链接 大意:Arseny有m个1元硬币, 无限多100元钞票, 他要按顺序买n个东西, 第i天如果找零x个硬币, 他的不满值会加 w[i]*x, 求最少不满值. 若找零, 则硬币增加 100-ci ...

  10. from * import *(ImportError: No module named *)为什么报错没有这个目录

    先说下from * import * 的原理:比如有路径D:\fanbingbing\ai\wo.py这么一个文件,而现在你在D:\fanbingbing\buai\ni.py(别介意这么比喻..(⊙ ...