黑马程序员___Foundation__结构体

结构体

NSRange:

用来表示范围

创建

NSRange r1 = {2, 4}

NSRange r2 = {.location = 2, .length = 4}

NSRange r3 = NSMakeRange(2, 4)

查找某个字符串在str中的范围

NSString *str = @"i love oc";

NSRange range = [str rangeOfString:@"java"]

NSLog(@"location = %ld, length=%ld", range.location, range.length)

如果找不到,length=0,location=NSNotFound==-1

NSPoint:

用来表示一个点的坐标

创建

CGPoint p1 = NSMakePoint(10, 10);

NSPoint p2 = CGPointMake(20, 20);

表示原点

CGPointZero == CGPointMake(0, 0)

NSSize:

表示二维平面的尺寸

NSSize s1 = CGSizeMake(100, 50);

NSSize s2 = NSMakeSize(100, 50);

CGSize s3 = NSMakeSize(200, 60);

CGRect:

表示二维平面具体的一个尺寸和位置

CGRect r1 = CGRectMake(0, 0, 100, 50);

CGRect r2 = { {0, 0}, {100, 90}};

CGRect r3 = {p1, s2};

定义CGRect的另外方法

CGRect myRect(CGFloat x, CGFloat y, CGFloat width, CGFloat height)

{

CGRect rect;

rect.origin.x = x;

rect.origin.y = y;

rect.size.width = width;

rect.size.height = height;

}

将结构体转为字符串

NSString *str = NSStringFromPoint(p1);

NSString *str = NSStringFromSize(s3);

NSString *str = NSStringFromRect(r1);

比较两个点是否相同(x、y)

BOOL b = CGPointEqualToPoint(CGPointMake(10, 10), CGPointMake(10, 10))

判断一个点是否在某个区域

BOOL b2 = CGRectContainsPoint(CGRectMake(50, 40, 100, 50), CGPointMake(60, 45))

使用这些CGPointEqualToPoint、CGRectContainsPoint等函数的前提是添加CoreGraphics框架

时间: 2025-01-11 12:08:37

黑马程序员___Foundation__结构体的相关文章

【黑马程序员】————结构体

------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 一.什么是结构体 数组:只能由多个相同类型的数据构成 结构体:可以由多个不同类型的数据构成 二.结构体的定义 1.定义形式 结构体内部的元素,也就是组成成分,我们一般称为"成员". 结构体的一般定义形式为: 1 struct 结构体名{ //struct是关键字,是结构体类型的标志 2 3 类型名1 成员名1; 4 5 类型名2 成员名2; 6 7 …… 8 9 类型名n 成员名n;

黑马程序员-关于结构体

------- IOS培训.android培训.java培训.期待与您交流! ---------- 1 结构体: 作用:可以由多个不同类型的数据构成. //定义结构体类型,类型为person:(此阶段不会分配存储空间 1 struct person 2 { 3 变量; // 称为结构体变量或属性 4 } 5 //根据结构体类型person,定义结构体变量,变量名为p(此阶段分配存储空间) 6 struct person p={ }; // 赋值的时候只能在定义结构体的时候同时赋值 错误写法 st

《黑马程序员》 结构体struct (C语言)

一.结构体的基本概念 ●     数   组:只能由多个相同类型的数据组成 ●     结构体:可以由多种不同类型的数据组成 代码练习: #include <stdio.h> int main() { // 1.定义结构体类型 struct person (并不会分配存储空间) struct person { int age; double height; char *name; }; //2.根据结构体类型,定义结构体变量 (真正分配存储空间)struct person p ={20,1.5

黑马程序员-Foundation-结构体与常用类(一)

------- IOS培训.android培训.java培训.期待与您交流! ---------- 结构体: 有如下结构体: NSRange,NSPoint/CGPoint,NSSize/CGSize,NSRect/CGRect 注意点:CG开头的结构体一般属于CoreGraphics框架 1.NSRange(表示范围) 参数:location(位置),length(长度) 1 NSRange r1 = {2,3} ; // 表示从2开始,3个长度 2 NSRange r2 = NSMakeRa

黑马程序员—09-结构体

l 什么是结构体 实际应用中,我们通常需要由不同类型的数据来构成一个整体,比如学生这个整体可以由姓名.年龄.身高等数据构成,这些数据都具有不同的类型,姓名可以是字符串类型,年龄可以是整型,身高可以是浮点型.为此,C语言专门提供了一种构造类型来解决上述问题,这就是结构体,它允许内部的元素是不同类型的. l 结构体的定义 结构体的一般定义形式为: 1 struct 结构体名{ 2 3     类型名1 成员名1; 4 5     类型名2 成员名2; 6 7     …… 8 9     类型名n

黑马程序员___Foundation__集合

NSArray NSArray的创建 NSArray *array = [NSArray arrayWithObject:@“jack”]   创建单个元素 NSArray *array3 = [NSArray arrayWithObjects:@"jack", @"rose", nil] 创建多个元素 快速创建一个NSArray对象 NSArray *array4 = @[@"jack", @"rose", @"4

黑马程序员------C 语言学习笔记---C语言的基本结构

黑马程序员------<a href="http://www.itheima.com" target="blank">Java培训.Android培训.iOS培训..Net培训</a>.期待与您交流! ------- 第一 C语言结构基础 1.1     C语言的基本结构 01          #include <stdio.h> :表示文件包含,功能是将头文件stdio.h中的内容包含到程序中. 02          mai

黑马程序员------C 语言学习笔记---程序基本结构

黑马程序员------<a href="http://www.itheima.com" target="blank">Java培训.Android培训.iOS培训..Net培训</a>.期待与您交流! ------- 第二  程序基本结构 一 分支结构 01 单分支结构 格式: if(表达式) { 语句: } 其中,“表达式”为判断条件,只要表达式的值不为0,就认为条件成立. 02 双分支结构 格式: if(表达式) 语句1: else 语句

黑马程序员_C语言总结-基础部分

C语言基础 1.C语言的关键字 1>关键字就是C语言提供的有特殊含义的符号,也称为保留字,C语言中一共有32个关键字,这些关键字都有自己的含义 例如:int double float if  else switch for 等等 2.标示符的概念: 1>标示符就是在程序中自定义的一些名称,比如函数名,变量名,结构体名等等这些都是标示符 2>命名规则: 1>只能由英文字母的大小写和数字以及_下划线组成,且首字母必须为字母或者下划线_ 2>在C语言中是严格区分大小写的,比如if是