Objective-C基础语法学习笔记一

Objective-C概述

Objective-C,面向对象的C语言。简称:OC
OC的本质还是C语言,并且完全兼容C语言的代码。

发展历史:布莱德 考克斯(Brad Cox)在20世纪80年代初期,结合C语言(可移植性好)和Smalltalk(面向对象)的优势设计出了Objective-C语言

1985年,乔布斯创建NeXT公司,选择Unix操作系统

NeXT公司使用OC语言,设计出了NextStep界面工具包

1995,NeXT公司获得了OC的全部商业版权

1996,苹果公司收购NeXT,NextStep更名为Cocoa,从此OC成为开发Mac平台的主力军。

OC基础语法

OC程序的源文件的后缀名是.m  m代表message  代表OC的消息机制

main函数是OC程序的入口和出口

#import指令:同一个文件无论#import多少次只会被包含一次

框架:是一个功能集

NS前缀
NextStep ---> Cocoa ---> Foundation

OC程序的编译/链接/执行

1.在.m文件中写上符合OC语法规范的源代码。
2.使用编译器将源代码编译成目标文件。
cc -c xxx.m
预处理-->检查语法-->编译

3.链接
cc xxx.o
如果程序中使用到了框架中的函数或者类,那么需要链接到框架中的类或函数。
cc xxx.o -framework 框架名称
例如:cc main.o -framework Foundation
4.链接成功后会生成一个a.out可执行文件 执行该文件就可以了。

请添加图片描述

OC的数据类型

1.支持C语言中所有的数据类型
	基本数据类型:int char float double
	构造类型:数组 结构体 枚举
	指针类型:int *p1
	空类型: void
	typedef自定义类型
2.新增类型
	BOOL:存储表达条件表达式的结果,YES或NO
	(BOOL的本质。typedef signed char BOOL  是一个有符号的char 变量)
	Boolean:
		a.存储true或false
		b.存储条件表达式的值 true 或 false
		c.本质:typedef unsigned char无符号的char类型
3.class类型
4.id万能指针
5.nil 和 NULL
6.SEL 方法选择器
7.block代码段

NSString

NSString 类型的指针变量,只能存储OC字符串的地址。
Nsstring是Fundation框架中的一个类,@"jack"本质上是一个NSString对象。
%p打印的是指针变量的值
%@打印的是指针变量指的对象

常用方法

1.将C语言字符串转换为OC字符串对象

char *str = "rose";
    NSString *str1 = [NSString stringWithUTF8String:str]

2.拼接OC字符串对象

int age = 19;
    NSString *name = @"谢飞";
    NSString *str = [NSString stringWithFormat:@"我叫%@,我今年%d岁",name,age];

3.返回字符串长度

NSString *str = @"xdf";
    NSUInteger len = [str length];

4.取指定下标的字符

NSString *str = @"我爱你中国";
    unichar ch = [str characterAtIndex:2];
    NSLog(@"中文ch = %C",ch);

5.比较两个字符串是否相等

    NSString *str1 = @"jack";
    NSString *str2 = @"jack";

    if([str1 isEqualToString:str2]) {
        NSLog(@"YES 他们相等");
    } else {
        NSLog(@"NO 他们不相等");
    }

类和对象

1.对象:万物皆对象
2.类:对象的抽象集合,用来描述一群具有相同特征和行为的事物

类和对象的关系

1.类是模板,类的对象是根据这个模板创建出来的
2.同一个类可以创建无数个对象
3.同一个类的多个对象之间毫无关系

类的三要素

1.类名
2.类属性
3.方法
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值