- 博客(16)
- 收藏
- 关注
原创 IOS面试题一些细节
1。变量在内存中存储时,会优先分配地址大的字节来存储变量的内容,存放数据也是由大到小。但是变量的起始地址是它的最小地址 (最后一位的地址). 2。scanf函数与gets函数比较在接收字符串的时候,他们都会在结尾自动添加/0,所不同的是,scanf认为空格是/0,而gets认为回车时/0.这就意味着你无法用scanf接受一个英文句子作为数组内容,因为它一旦发现了空格就会认为这个句子已经
2015-05-11 09:09:57 307
原创 还没有弄明白的问题
1.报错,不知道为啥int main(){ NSLog(@"please input a sentence"); char *str2; scanf("%s",str2); NSMutableString *str = [NSMutableString stringWithFormat:@"%s",str2]; // 这里一直报内
2015-05-09 17:40:06 284
原创 黑马程序员--11OC Block && protocol
------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------1.blockblock作用是封装一段代码,我们也称之为代码块或者代码段,它与函数的区别是,函数在执行main函数之后就不能定义了,而block却可以;main调用一个函数,这个函数一定是在main{},之外的,而block却可以把这段代码写在main里边;如果是调用没有返
2015-03-05 07:57:21 350
原创 黑马程序员--10 OC Foundation框架
集合(有序数组NSArray,无序数组NSSet,无序字典NSDictionary )NSArray NSArray是OC的数组,以面向对象的形式操作数组.NSArray是OC的有序数组,可以存储任何类型的OC对象,但是不能储存nil、int、float、enum、struct等类型的数据NSArray是不可变数组.数组元素在创建数组时就被确定. 数组创建后不可添加/修
2015-03-04 14:58:26 350
原创 黑马程序员--09 OC 内存管理
管理范围:任何继承了NSObject的对象,对其他基本数据类型(int、char、float、double、struct、enum等)无效补充:a. 局部变量存放在栈中.对象存放在堆中.b. 注意: 对象指针还是存放在栈中,对象本身占用的内存存放在堆中c. 放在栈里面的内容不用外面管理,只要一段程序结束后,栈中的内容自动释放。而堆中的内存是动态创建的,所
2015-03-04 14:57:34 459
原创 黑马程序员--08 OC 核心语法
#点语法#本质:是方法调用,并不是访问成员变量p.age = 10; 等价 [p setAge:10];int a = p.age; 等价 [p age];编译器特性:当使用点语法时,编译器会自动展开称相应的方法。#成员变量作用域#基本概念 :局部变量,全局变量,都有自己的作用域,成员变量也不例外四大类型的成员变量的
2015-03-04 14:56:44 474
原创 黑马程序员--07 OC 三大特性
三大特性:封装,继承,多态#封装 # @public的成员可以被任意赋值,这样数据通过 指针->成员变量名 方式给成员变量赋值,可能被赋值为不合理的数值具有危险性。通过封装后便可解决上述问题,封装的好处:过滤不合理的值,保证数据的安全性; 屏蔽内部的赋值过程;让外界不必关注内部的细节不使用@public后,便不能通过指针->成员变量名 的方式给成
2015-03-03 22:40:02 295
原创 黑马程序员--06OC类和对象
#类的设计# 1. 设计类只需要关注三部分: 类的名称 - 人(Person) 具有属性 - 比如姓名(name), 年龄(age) 具有功能 - 比如吃饭(eat), 运动(sport) 2. 类名的规范 a. 类名的第一个字母必须大写 b. 不能有下划线
2015-03-03 21:50:33 381
原创 黑马程序员--易错点整理
1.关于char类型变量的大小char类型如果直接用sizeof来计算大小,会输出4,比如a,在内存中以65存在,如果想要其输出1,要像瞎编这样来写:int main(){ char c = 'a'; int i = sizeof(c); NSLog(@"%d",i); return 0;}2.
2015-03-03 11:25:27 249
原创 黑马程序员--练习题汇总(未完待续)
1.输入一个句子,然后把每个单词首字母大写之后输出。#import int main(){ char *sen; NSLog(@"please input"); gets(sen); sen[0] = sen[0]-32; for (int i = 0;sen[i] != '\0';i++) {
2015-03-03 11:20:47 727
原创 黑马程序员--05Ctypedef/extern/static
typedeftypedef是一个常用的关键字,用来给已经存在的数据类型起别名。基本使用 给变量改名typedef int Integer; //把int起名为Integer.可以定义为全局的或者局部的int a = 10; //依然可以使用原来的intInteger b = 10;
2015-03-02 19:53:56 381
原创 黑马程序员--04C预处理
------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------预处理指令:a.在编译前执行的指令b.以 # 开头,句尾没有分号c.主要分3种:宏定义、文件包含、条件编译 记住一句话:宏纯粹是用来替换的不带参数的宏定义形式: #define 宏名 值 把这行代码后所有的宏名替换为它的值 (字符串中的不会被替
2015-03-02 18:57:13 337
原创 黑马程序员--03C结构体和枚举
------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------#结构体#结构体是一种构造类型,像数组一样,也是由多个不同的数据构成的整体,但是允许数据成员的类型不同。 定义结构体类型格式: struct name { ...; ...; }; // 元素用分号分隔 struct Student {int ag
2015-03-02 16:45:49 365
原创 黑马程序员--02C数组/字符串/指针
#数组#数组是一种构造类型.数组用来存储一组相同类型的数据.可以是任何类型的. 但必须是同一种类型的数据格式: 类型数组名[元素个数];int a[5];错误写法:int a[]; // 定义时不可以不指定元素个数初始化 初始化是指在数组定义的同时给数组元素赋值.注意: 只有在定
2015-03-02 16:44:27 388
原创 黑马程序员--01C语言基础
------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------什么是关键字关键字就是C语言提供的有特殊含义的符号,也叫做“保留字”C语言一共提供了32个关键字,这些关键字都被C语言赋予了特殊含义auto double int struct break else long switchcase enum register
2015-03-02 10:31:17 634
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人