Foundation框架中的常用结构体
- NSRange
- NSPoint / CGPoint
- NSSize / CGSize
- NSRect / CGRect
Foundation框架
- Foundation框架,正如其名,它是所有IOS框架的基础
- Foundation框架中包含了很多开发中常用的数据类型
- 要想使用Foundation框架中的数据类型,只需要包含它的主头文件即可 #import < Foundation/Foundation.h >
NSRange
一、NSRange的简介
1. NSRange是一个用来表示范围的结构体,这个结构体中有两个成员,NSUInteger类型的location和NSUInteger类型的length
2. location用来表示位置,length用来表示长度
3. NSRange类型结构体的定义
struct_NSRange
{
NSUInteger location;
NSUInteger length;
} NSRange;
二、NSRange的使用
<1> 给NSRange结构体变量赋值的几种方式:
// 先定义结构体变量再赋值
NSRange r;
r.location = 0;
r.length = 10;
// 先定义结构体变量再赋值
NSRange r2;
r2 = (NSRange){
0, 10};
// 定义结构体变量的时候直接赋值
NSRange r3 = {
0,10};
NSRange r4 = {
.length = 10, .location = 0};
// 定义结构体变量的常见方式
NSRange r5 = NSMakeRange(0, 10);
-使用注意:
1. 开发中我们一般使用NSMakeRange( )函数来给NSRange结构体变量赋值
<2> NSRange的简单使用:
(1)查找@“believe”在字符串@“I believe I can fly”中的位置
- 使用注意:
1. 如果如果查找到了,返回所在范围
2. 如果没有查找到,返回的范围length为0,location为NSNotFound
3. NSNotFound,%lu输出的话是unsigned long类型的最大数922337203685477580
7,如果%d输出的话是-1
(2)将NSRange类型的结构体变量转换成字符串,通过这种方式也可以查看NSRange类型变量中的值
NSPoint / CGPoint
一、NSPoint / CGPoint的简介
1. NSPoint / CGPoint是一个用来表示二维平面上的点的结构体,这个结构体中有两个成员,CGFloat类型的x和CGFloat类型的y
2. CGFloat类型的定义:
typedef float</