




已阅读5页,还剩34页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基基础课础课 程程 MACMAC Apple Inc. Objective-CObjective-C语语言言 苹果技术开发课程苹果技术开发课程Liujie 2012 Lession 2 Objective-C数据类型和运算符 Liujie 2012 数据类型和运算符 本章内容包括: 简单数据类型 Objective-C其它数据类型 运算符和表达式 简单数据类型 一、整型: int(4bytes) 如果是64位系统则(8bytes),使用%i格式输 出。 long int(long) short int(short) (2bytes) unsigned int unsigned long unsigned short 简单数据类型 1、整型变量的定义: int main (int argc, char *argv) NSAutoreleasePool * pool = NSAutoreleasePool alloc init; int integerVar = 100; NSLog (“integerVar = %i“, integerVar); pool drain; return 0; 简单数据类型 2、混用整型变量: NSAutoreleasePool * pool = NSAutoreleasePool alloc init; int a,b,c,d; unsigned u; a = 12; b = -24; u = 10; c = a + u; d = b + u; NSLog(“a+u=%i,b+u=%i“,c,d); pool drain; return 0; 简单数据类型 简单数据类型 1、float定义: float floatingVar = 331.79; double doubleVar = 8.44e+11; NSLog (“floatingVar = %f“, floatingVar); NSLog (“doubleVar = %e“, doubleVar); NSLog (“doubleVar = %g“, doubleVar); 说明: %f十进制形式表示float %e科学计数法表示 %g最短表示法,用指数形式。 简单数据类型 2、float误差: float a=123456.789e5; float b=a+20; NSLog(“%f“,a); NSLog(“%f“,b); 简单数据类型 3、float有效位数: float a = 33333.33333; double b = 33333.33333333333333; NSLog(“%f“,a); NSLog(“%f“,b); 请检查结果 默认保留6位小数部分。其余四舍五入 简单数据类型 三、字符型: 区分字符和字符串 a,b,1,2字符 ”hello world”字符串 简单数据类型 三、字符型: 转义字符: n:换行 t:下一制表位置 b:退格 r回车 f换页 反斜杠 单引号 ”双引号 ddd 八进制 xhh16进制 简单数据类型 1、字符型的整数存储: NSAutoreleasePool * pool = NSAutoreleasePool alloc init; char a=120; char b=121; NSLog(“%c,%c“,a,b); NSLog(“%i,%i“,a,b); pool drain; / x,y 120,121 简单数据类型 2、字符型的运算: NSAutoreleasePool * pool = NSAutoreleasePool alloc init; char a=a; char b=b; a=a-32; b=b-32; NSLog(“%c,%c“,a,b); NSLog(“%i,%i“,a,b); pool drain; / A,B 65,66 简单数据类型 四、字符串: NSString定义,MFC是CString,(苹果和微软两个公司 从1998年就是这么竞争着) 合法字符串: ”china” ”$12.5” 简单数据类型 五、id类型: Objective-C中 id类型可以代表任何数据类型对象,这种 类型被定义为指向对象的指针,在使用时不需要加*。 简单数据类型 1、id设计类的运用(student类设计): interface Student : NSObject int sid; NSString *name; property int sid; property (nonatomic,retain) NSString *name; -(void)print; -(void)setSid:(int)sid andName:(NSString*)name; end 简单数据类型 1、id设计类的运用(student类设计) : #import “Student.h“ implementation Student synthesize sid,name; -(void)print NSLog(“学号:%i姓名:%“,sid,name); -(void)setSid:(int)sid1 andName:(NSString*)name1 self.sid = sid1; = name1; end 简单数据类型 1、id设计类的运用(member类设计) : interface Member : NSObject NSString *name; int age; property (nonatomic,retain)NSString *name; property int age; -(void)print; -(void)setName:(NSString*)name1 andAge:(int)age1; end 简单数据类型 1、id设计类的运用(member类设计) : implementation Member synthesize name,age; -(void)print NSLog(“我的名字是:%,我的年龄是%i“,name,age); -(void)setName:(NSString*)name1 andAge:(int)age1 = name1; self.age = age1; end 简单数据类型 1、id设计类的运用(调用) : Member *member1 = Member allocinit; member1 setName:“Sam“ andAge:36; id data; data = member1; data print; Student *student1 = Student allocinit; student1 setSid:1122334455 andName:“Lee“; data = student1; data print; student1 release; member1 release; 简单数据类型 六、类型转换: 不同数据类型可以转换成同一种数据类型,进行计算,包 括自动转换和强制转换 1、自动转换: float PI=3.14159; int s,r=5; s=r*r*PI; NSLog(“s=%i“,s); 简单数据类型 2、强制转换: float f=5.75; NSLog(“(int)f=%i,f=%f“,(int)f,f); 结果:(int) f=5,f=5.750000 简单数据类型 七、枚举类型: 格式:enum 类型 值,值,值 举例: 一、定义 enum sex male,female 二、声明变量 enum sex student,teacher 三、赋值 student=male 简单数据类型 七、枚举类型: 格式:enum 类型 值,值,值 举例: enum direction left,right,up=9,down enum direction mydirection; NSLog(”%i”,mydirection); mydirection=down; NSLog(”%i”,mydirection); 简单数据类型 八、typedef: 格式:typedef 类型 类型 举例: typedef int age age i,j; typedef NSString *NameObject; NameObject obj1,obj2;/等价:NSString *obj1,*obj2; 检查2个对象是否相等 if(obj1 compare:obj2=NSOrderSame) 简单数据类型 九、BOOL: 取值:YES ,NO ,1,0 举例: int p, d; BOOL isPrime; for ( p = 2; p ,=, 5、赋值运算:=,+=,-=,*=,/= ,%= , NSLog(“%f,%f“,20.0/7,-20.0/7); 求余数 int a=25,b=5,c=10,d=7; NSLog(“a%b=%i“,a%b); NSLog(“a%c=%i“,a%c); NSLog(“a%d=%i“,a%d); NSLog(“a/d*d+a%d=%i“,a/d*d+a%d); 运算符和表达式 加减乘除: int a=100; int b=2; int c=25; int d=4; int result; result=a-b; NSLog(“a-b=%i“,result); result=b*c; NSLog(“b*c=%i“,result); result=a/c; NSLog(“a/c=%i“,result); result=a+b*c; NSLog(“a+b*c=%i“,result); NSLog(“a*b+c*d=%i“,a*b+c*d); 运算符和表达式 加减乘除: int a=25; int b=2; float c=25.0; float d=2.0; NSLog(“6+a/5*b=%i“,6+a/5*b); NSLog(“a/b*b=%i“,a/b*b); NSLog(“c/d*d=%f“,c/d*d); NSLog(“-a=%i“,-a); 运算符和表达式 强制转换: float f1=123.125,f2; int i1,i2=-150; i1=f1; NSLog(“%f转换为整形为%i“,f1,i1); f1=i2; NSLog(“%i转换为浮点形为%f“,i2,f1); f1=i2/100; NSLog(“%i除以100为 %f“,i2,f1); f2=i2/100.0; NSLog(“%i除以100.0为 %f“,i2,f2); f2=(float)i2/100; NSLog(“%i除以100转换为浮点形为%f“,i2,f2); 运算符和表达式 自增、自减运算: int i=8; NSLog(“i is %i“,i);/8 NSLog(“+i is%i“,+i);/9 NSLog(“i is %i“,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 想变成狗的猫绘本课件
- 2026届山西省翼城中学化学高二第一学期期末学业水平测试试题含答案
- 患者搬运法课件
- 恐龙课件文案
- 塔吊保养考试题及答案
- 机电矿长考试题及答案
- 护士小组面试题及答案
- 中航西飞招聘考试试题及答案
- 停车起步考试题及答案
- 小学剪纸试题及答案
- 2025年度运输业安全生产知识竞赛试题(附答案)
- 光伏居间的合同8篇
- 从业人员培训管理制度
- 医疗风险防控培训课件
- 酒店前台礼貌礼节培训
- 诊疗规范培训课件
- 幸福心理学-(彭凯平)
- 2025年中邮保险招聘笔试参考题库含答案解析
- 《中国老年糖尿病诊疗指南(2024版)》解读课件
- 《中国女性乳腺癌患者糖尿病和糖尿病前期管理专家共识》 (2024版)
- 特种设备安全检查与巡查制度
评论
0/150
提交评论