自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(34)
  • 收藏
  • 关注

原创 IOS多线程开发-NSThread原理及演示

// 创建线程方式1- (void)test1{    // 实例化一个线程对像   NSThread *thread = [[NSThreadalloc] initWithTarget:self selector:@selector(run) object:nil];    // 让线程开始工作,启动线程, 在新开的线程执行run方法    [

2015-01-15 23:28:28 581

原创 IOS GDC线程原理及代码实现

GCD,全称Grand Central Dispath,是苹果开发的一种支持并行操作的机制

2015-01-15 23:24:40 1943

原创 多线程开发原理

什么是线程?1个进程要想执行任务,必须得有线程(每1个进程至少要有1条线程)线程是进程的基本执行单元,一个进程(程序)的所有任务都在线程中执行n多线程的原理p 同一时间,CPU只能处理1条线程,只有1条线程在工作(执行)p 多线程并发(同时)执行,其实是CPU快速地在多条线程之间调度(切换)p 如果CPU调度线

2015-01-15 23:15:11 561

原创 Foundation框架基础 NSFileManager-文件管理器

#import/*  NSFileManager  单例对象 */intmain(intargc, const char * argv[]) {    @autoreleasepool {        //     获取NSFileManager单例对象      NSFileManager *fm = [NSFileManag

2014-12-09 22:15:25 554

原创 Foundation框架基础 NSData-数据

#import/* 概念: IOS中二进制文件使用NSData保存 音频、视频文件必须使用NSData来保存 */intmain(intargc, const char * argv[]) {    @autoreleasepool {//      读取文件        NSMutableData *dataM = [NS

2014-12-09 22:13:43 472

原创 foundation框架基础 NSDate-日期

#import//NSCalendar 日历,主要用于日期的计算intmain(intargc, const char * argv[]) {    @autoreleasepool {               NSCalendar *calendar = [NSCalendarcurrentCalendar]; 

2014-12-09 22:12:22 530

原创 Foundation框架基础 常用的结构体

#importintmain(intargc, const char * argv[]) {    @autoreleasepool {      //      1、NSRange 区间               NSRange range;//        range.location  表示开始的位置//      

2014-12-09 22:10:52 427

原创 Foundation框架基础 NSSet

#import/*    特点:无序,元素不可以重复,可以用快速去除数组中的重复元素,效率比数组要高    NSSet:特点:不可以变,一经创建不能增删改    NSMutableSet:可以增删,没有改 */intmain(intargc, const char * argv[]) {    @autoreleasepool {  

2014-12-09 22:07:56 396

原创 Foundation框架基础 NSMutableDictionary-可变字典

#import/* 在字典中所有key(键)都是唯一的 值没有要求,可以重复  NSMutableDictionary:是NSDictionary的子类,它是可变的字典,它支持增删除改的操作 */intmain(intargc, const char * argv[]) {    @autoreleasepool {   

2014-12-09 22:05:06 484

原创 Foundation框架基础 NSDictionary-字典

#import/*  key 表示键  value 表示值  【掌握】概念:字典是一个无序的集合,它使通过键值对的方式来存储数据的  key是有要求  NSCopying才能成为字典key,一般情况都是使用字符串作为字典的key  NSDictionary 不可变得字典,一经创建里面的元素就不可以改变了  Person  age:@10  name:

2014-12-09 22:03:46 420

原创 foundation框架基础 NSMutableString 可变字符串

#import/* NSMutableString 可变字符,它是NSString子类 增改删的操作  一个字符串需要经常修改其中的内容,那么就使用NSMutableString *//*   把 20 itcast 拼接起来使用空格隔开  *///不要使用这种方式,效率低voidtest(){    //      只是

2014-12-09 21:57:27 546

原创 Foundation框架基础 NSString

#import/*  概念:NSString是不可变字符串,所有它所有产生其他字符串方法都是生成一个新的字符串,而不会改变原来字符串 */#import"NSString+CZ.h"//字符串与URL//URL: 概念:Uniform Resource Locator 统一资源定位符//URL:格式 协议头://主机名称/资源路径//http:/

2014-12-09 21:56:09 488

原创 Foundation框架基础 NSMutableArray-可变数组

#import#import"CZDog.h"intmain(intargc, const char * argv[]) {   //  创建一个空的可变数组//    NSMutableArray *arrayM  =  [NSMutableArray array];// 创建的时候该数组可容纳的元素个数  //  通过一个不可变数

2014-12-09 21:49:55 403

原创 Foundation框架基础 NSArray

Foundation/Foundation.h>#import"CZDog.h"#import "CZPerson.h"/* NSArray:不可以变 */intmain(intargc, const char * argv[]) {// 字符串转数组    NSArray *array =@[@"a",@"b",@"c",@

2014-12-09 21:46:41 520

原创 Object-C加强 SEL类型

/*   SEL是一种数据类型,代表方法签名,通过它就找到这个对象上方法   SEL 其实也是对方法的一种包装 , 将方法包装成一个SEL类型的数据,  去找对应方法地址 , 找到方法地址就可以调用方法 比较耗性能    1、定义变量  SEL 变量名称    2、通过@selector(方法名称) 快速生成一个SEL   3

2014-12-04 22:13:32 464

原创 Object-C加强 分类以及扩展

分类(类别)作用:扩展已有类的功能 1、分类是原来的类增加方法 2、在方法内部可以访问原有类的成员变量(定义头文件中)@interface CZPerson (Drink)   步骤 1、为原有类创建一个分类 2、在分类中增加新的方法的声明和实现 注意点:    1、分类中不能扩展原有类的成员变量    2、@property在分

2014-12-04 22:03:31 500

原创 OBject-C加强 代码总行数计算-项目实现

考察NSString , NSArray的使用 NSFileManager 功能 : 计算文件代码行数, 统计代码量

2014-12-03 23:07:24 614

原创 Object-C加强 Protocol协议

protocol 协议用途:用来声明一大堆方法(不能声明成员变量) 只要某个类遵守了这个协议,就相当于拥有这个协议中所有方法声明 1.协议的定义@protocol 协议名称@end 2.如何遵守协议1>类遵守协议@interface 类名:父类名 @end 2>协议遵守协议@protocol 协议名称 @end 3.协议中方法

2014-12-03 23:00:26 403

原创 Object-C加强 Block使用

block 用来保存一段代码block 的标志:^ 实现格式 ^ 返回值类型(形参列表) { 语句... }; block跟函数很像:1.可以保存代码2.有返回值3.有形参4.调用方式一样 当发现多个方法中大部分代码相同 , 只有一部分代码经常变化这时可以把经常变化的代码通过 block 参数传入 在block 中可以访问局部变量

2014-12-03 22:53:19 400

原创 Object-C加强 内存管理

1 . 基本方法使用1> retain : 计数器 + 1 , 会返回对象本身2> release : 计数器 - 1 , 没有返回值3> retainCount : 获取当前的计数器4> dealloc    * 当一个对象要背回收的时候, 就会调用    * 一定要调用[super dealloc] , 这句调用要放在最后面 2.概念 1>僵尸对象 : 所占

2014-12-01 23:00:17 504

原创 OC基础总结

1.NSLog的使用:Foundation用于日志输出的函数   %@  输出对象的占位符,当它输出的对象的时候会调用对象description方法   %C  Unicode字符   %c  ASCII码 2.面向对象思想   1、相对于面向过程   面向过程:强调的步骤,以动词打头的   面向对象:强调完成这个事情,所需的对象   2、面向对象的好处    

2014-11-25 18:31:31 1091

原创 C语言大总结

本人学习C语言入门的总结 看看是否都学会了呢

2014-11-20 22:03:15 765

原创 C语言基础 预处理指令

在编译前进行解析处理的指令         源代码 —> 编译预处理 —> 编译 —> 链接 —> 运行          编译预处理指令                  1.宏定义 #define                           1.1 不带参数的宏定义                           1.2 带参数的宏定义         

2014-11-20 22:01:00 533

原创 C语言基础 结构体 枚举

结构体基本概念构造类型 : 由已有的数据数据类型构成类型         1.数组 : 多个同种数据类型的数据构成的那么一种类型            特点 : 只能存放一种数据类型         2.结构体 : 用来存放表示某种特定含义的一组数据                   它是对数据的封装                   函数对功能的封装       

2014-11-20 21:40:01 475

原创 C语言基础 内存区分与存储

内存分区fen'pei 从高地址到低地址 栈 : 局部变量 , 内存是由系统管理堆 : 存放对象 , 它由程序员自己申请释放, 它的内存需要程序员自己管理全局区 : 存放全局变量与静态变量, 它由系统管理常量区 : 用来存放常量, 内存它由系统管理 , 它是只读区代码区 : 用来存放代码, 内存它由系统管理 , 它是只读区

2014-11-12 22:42:27 479

原创 C语言基础 指针函数与函数指针

11-12 指针函数指针函数 : 返回值为指针的函数局部变量的地址不可以作为函数返回值 , 因为局部变量在函数结束时候已经被系统回收了char *words(){return “today is good day!\n”;}char *words2()  //错误示范 (局部变量){char words[] = “today is g

2014-11-12 22:41:10 422

原创 C语言基础 指针

11-11  指针内存中最小的存储单元 : 字节 , 每一个字节在内存中都有一个编号, 这编号就是指针指针作用 : 有了指针就可以访问它所指向的存储空间*作用 : 1.在定义指针变量的时候 , 它就类型说明符 , 它说明定义的这个变量是一个指针变量2.如果不是在定义指针的时候 , 它是一个操作符 , 用在指针变量的前面是访问指针所指向的存储空间&作用 :

2014-11-12 22:36:32 384

原创 C语言基础 字符串

字符串字符串有一个结尾的表示 “\0”字符串与字符数组的区别在于字符串是以\0结尾的, 而字符数组任意字符结尾%s 根据\0来判断字符串有多长总结 : \0 的ASCII码就是 01. 字符串是一个以\0结尾字符数组2. %s输出内容仅会检查是否遇到\ 03. 字符数组如果没有部分初始化 那么没有初始化的元素就被初始化为0,\0的ASCII码就是04

2014-11-10 00:25:24 473

原创 C语言基础 数组与排序

11-8 数组用来保存多个相同数据类型的数据集合定义变量 变量类型 变量名称;定义数组 变量类型 数组名称 [元素个数];定义一个可以容纳5个int类型的数据的数组int scores[5];1.数组只有定义了才能初始化2.只定义数组没有初始化那么数组中都是垃圾值,所以数组只有初始化了才可以使用./*总结:1.数组元素作为函数

2014-11-10 00:16:34 614

原创 C语言基础 进制

进制十进制 : 逢十进一八进制 : 逢八进一二进制 : 逢二进一以0b或0B开头就表示二进制数int b = 0b1101;printf(“b = %b”,b);八进制:以0开头的就表示八进制数int o = 015;printf(“o = %d”,o);十六进制: 以0x或0X开头的数就是一个十六进制的数int x = 0xd;pr

2014-11-10 00:09:09 1273

原创 C语言基础 函数

11-5  函数函数:完成特定功能的代码块作用:管理代码优点:提高代码的可读性·     提高代码的复用性·     提高代码的可维护性函数:函数名不可以重复定义要给函数起个有意义的名字函数特点:只有调用才会执行 函数的定义格式形参列表  返回类型 函数名称(参数类型 参数名称,参数类型  参数名称)语句;…} 如何去定义一个

2014-11-10 00:07:39 596

原创 C语言基础 循环结构 while for

while循环循环: 用来处理一些重复执行的操作些循环的具体步骤:1.确定需要重复执行的操作2.确定循环终止的条件1,在循环开始前,需要做点事(定义一个循环控制变量并将其初始化)2,确定循环约束条件3,在每一次循环结束的时候或在循环中,要去改变循环控制变量的值,让它不换接近约束条件.int count =0;while (count prin

2014-11-08 23:02:36 1231

原创 C语言基础 选择结构 流程控制 If Switch

switchswitch(表达式){case 常量;语句;…break;case 常量;语句;…break;default;语句;…break;}注意点:     1、case 后面的常量不可以重复2、break 作用:结束switch 语句3、switch 语句只有遇到break 或者 switch 后面大括号才会结束

2014-11-08 22:54:19 685

原创 C语言基础 运算符

自增自减运算符无论++在前还是在后都会自增1++a; a本身会自增1,它的返回值(结果)是原来的 a + 1 的值a++; a本身会自增1,它的返回值(结果)是原来的 a 的值int a = 2;int b = a++ + a++ ;  // 2 + 3   a = 4b = ++a + ++a ;       // 5 + 5   a = 6

2014-11-08 22:38:21 555 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除