一 标题  常用结构体

二 API
1 NSRange 表示一个范围
A 实例化 NSRange rg={3,5};//第一参数是起始位置第二个参数是长度
B 实例化 NSRange rg2=NSMakeRange(3,5)
C 打印NSRange可以使用Foundation中方法 NSLog(@"rg2 is %@", NSStringFromRange(rg2));//注意不能直接NSLog(@"rg2 is %@", r,
因为rg2不是对象(准确的说%@是指针)而是结构体
2 NSPoint 表示一个点 坐标
A 实例化 NSPoint p=NSMakePoint(10, 15);
B 实例化 NSPoint p2=CGPointMake(10, 15); 比较常见
C 打印 NSLog(NSStringFromPoint(p2));
3 NSSize 表示一个大小 面积
A 实例化 NSSize s=NSMakeSize(10, 15);
B 实例化 CGSize s2=CGSizeMake(10, 15); 这种方式比较常见
C 打印 NSLog(NSStringFromSize(s2));
4 NSRect 表示一个矩形 坐标 长宽
A 实例化 NSRect r=NSMakeRect(10, 5, 100, 200);
B 实例化 NSRect r2=CGRectMake(10, 5, 100, 200); 比较常见
C 打印 NSLog(NSStringFromRect(r2)); 三 适配场景
1 NSRange
A 截取字符串
B 搜索字符串
C 获取数组的子集
//
// main.m
// OC-API-结构体
//
// Created by wangtouwang on 15/3/24.
// Copyright (c) 2015年 wangtouwang. All rights reserved.
// #import <Foundation/Foundation.h> //测试 NSRange
void test1(){
// 截取字符串
NSString *str1 = @"My name is jack,age=18";
NSRange range = NSMakeRange(, );
NSLog(@"%@",[str1 substringWithRange:range]);
//搜索字符串
range = [str1 rangeOfString:@"na"];
//获取数组的子集
NSLog(@"%@",NSStringFromRange(range));
NSArray *array = [[NSArray alloc] initWithObjects:@"A",@"B",@"C",@"D",@"E",@"F", nil];
array = [array subarrayWithRange:range];
NSLog(@"%@",array);
} int main(int argc, const char * argv[]) {
@autoreleasepool {
//test1(); }
return ;
}

IOS 学习笔记 2015-03-24 OC-API-常用结构体的更多相关文章

  1. 【Unity Shaders】学习笔记——SurfaceShader(二)两个结构体和CG类型

    [Unity Shaders]学习笔记——SurfaceShader(二)两个结构体和CG类型 转载请注明出处:http://www.cnblogs.com/-867259206/p/5596698. ...

  2. 《从零开始学Swift》学习笔记(Day 25)——类和结构体定义

    原创文章,欢迎转载.转载请注明:关东升的博客 Swift中的类和结构体定义的语法是非常相似的.类使用class关键词定义类,使用struct关键词定义结构体,它们的语法格式如下: class 类名 { ...

  3. Swift学习笔记(10):类和结构体

    目录: 基本 属性 方法 下标 继承 基本 使用class和struct关键字定义类和结构体. ・类是引用类型,结构体和枚举是值类型 ・值类型被赋予给一个变量.常量或被传递给一个函数时,已值拷贝方式传 ...

  4. 【学习笔记】【C语言】指向结构体的指针

    1.指向结构体的指针的定义 struct Student *p;  2.利用指针访问结构体的成员 1> (*p).成员名称 2> p->成员名称 3.代码 #include < ...

  5. Objective-C基础笔记(7)Foundation中的常用结构体

    一.NSRange NSRange的定义: typedef struct _NSRange { NSUInteger location; NSUInteger length; } NSRange; N ...

  6. IOS学习笔记25—HTTP操作之ASIHTTPRequest

    IOS学习笔记25—HTTP操作之ASIHTTPRequest 分类: iOS2012-08-12 10:04 7734人阅读 评论(3) 收藏 举报 iosios5网络wrapper框架新浪微博 A ...

  7. iOS学习笔记-精华整理

    iOS学习笔记总结整理 一.内存管理情况 1- autorelease,当用户的代码在持续运行时,自动释放池是不会被销毁的,这段时间内用户可以安全地使用自动释放的对象.当用户的代码运行告一段 落,开始 ...

  8. iOS学习笔记总结整理

    来源:http://mobile.51cto.com/iphone-386851_all.htm 学习IOS开发这对于一个初学者来说,是一件非常挠头的事情.其实学习IOS开发无外乎平时的积累与总结.下 ...

  9. iOS学习笔记17-FMDB

    上一节我已经介绍了SQLite的简单使用,不了解的可以提前去看一下iOS学习笔记16-数据库SQLite,这节我们来讲下FMDB. 一.FMDB介绍 FMDB是一种第三方的开源库,FMDB就是对SQL ...

  10. iOS学习笔记17-FMDB你好!

    上一节我已经介绍了SQLite的简单使用,不了解的可以提前去看一下iOS学习笔记16-数据库SQLite,这节我们来讲下FMDB. 一.FMDB介绍 FMDB是一种第三方的开源库,FMDB就是对SQL ...

随机推荐

  1. 恢复oracle中误删除drop掉的表

    查看回收站中表 select object_name,original_name,partition_name,type,ts_name,createtime,droptime from recycl ...

  2. A Tour of Go Numeric Constants

    Numeric constants are high-precision values. An untyped constant takes the type needed by its contex ...

  3. (二)如何在.net中使用Redis

    Step1:使用NuGet工具安装Redis C# API,这里有多个API我们可以使用其中一个:

  4. C#使用参数数组

    重载,是指在相同的作用域内,声明多个同名的方法.用以对不同类型或数量的参数的参数执行相同的操作.比如,可以求两个或者三个 int类型数中的最大值,我们可以编写这样的方法实现: class Util { ...

  5. IOS开发之带格式的文本

    有时可能会遇到这样的问题,一个label中设置的文本含有2种以上不同的格式,又不能把它拆解为两个label来显示,这时用NSMutableAttributedString可以很好的解决问题. 示例如下 ...

  6. HDU 1847 Good Luck in CET-4 Everybody! (博弈论sg)

    Good Luck in CET-4 Everybody! Problem Description 大学英语四级考试就要来临了,你是不是在紧张的复习?或许紧张得连短学期的ACM都没工夫练习了.反正我知 ...

  7. (8)Launcher3客制化之ContentProvider内容提供者,实现其它应用改动数据库更新等操作

    首先加入两个权限 <uses-permission android:name="com.android.launcher3.permission.READ_SETTINGS" ...

  8. Android开源工具库

    一.依赖注入DI 通过依赖注入降低View.服务.资源简化初始化,事件绑定等反复繁琐工作 1. AndroidAnnotations(Code Diet) android高速开发框架 项目地址:htt ...

  9. Discuz建站教程:本地安装discuz网站

    网站建目前都很简单,建站容易,管理难,网站做大优化更难.本人有建站经验,目前给大家分享一下如何建站,当然,目前使用的是本地建站,因为非本地建站需要购买域名和网站空间,当然,朋友们想真正建站的,对于一些 ...

  10. c# List Sort排序

    Test test1 = new Test(); test1.sortIndex = ; test1.name = "; Test test2 = new Test(); test2.sor ...