OC基础-第1天
#pragma mark - Day01_01_OC语言的历史(了解)
1) Objective - C 是一门面向对象的高级语言
2) Objective - C 简称 obj - C \ OC
3) OC 本质是还是C语言 ,是在C语言基础上加上了面向对象的部分,把C语言中复杂的、繁琐的语法封装的更为简单
4) OC完全兼容C,可以在任何位置写C语言的代码
#pragma mark - Day01_02_OC语言的发展现状(了解)
#pragma mark - Day01_03_OC的未来(了解)
1)苹果在2014年推出了swift语言,并且在2015年年底开源
2)swift未来会成为开发iOS程序的主流,但是需要一段时间,当前夯实以OC为主
#pragma mark - Day01_04_学习目标
#pragma mark - Day01_05_第一个OC程序
#pragma mark - Day01_06_OC的源文件后缀名和main函数
1) Objective - C 源文件的后缀名是 .m C语言程序源文件的后缀名是 .c
2) Objective - C 的入口依然是 main函数
参数 可以有也可以没有
返回值 0 正常结束
"拓展
补充 main函数默认两个参数 初始化值为0
#pragma mark - Day01_07_#import指令
1)以'#'开头,是一个预编译指令
2)#import 指令,是#include的增强版
3)作用:把指定的文件,拷贝到这个指令所在的地方,无论这个文件被#import多少次,最终只会拷贝一次
4)用法:
#import "" 在项目当前目录中找
#import <> 去编译器目录中找
#pragma mark - Day01_08_Foundation框架简要介绍
1)框架概念
类和函数的集合,用来处理相关的一类功能
2)Foundation框架
提供了OC中最基本的语法支持
3)使用
使用框架里的东西,必须先把框架的头文件导入
4)一般的框架都会提供一个和框架名称一样的.h,这个文件中包含了框架中所有头文件,我们只要导入这文件,就等价于导入了这个框架的所有文件
#pragma mark - Day01_09_NSLog函数
1)自动释放池 后续会讲
2)NSLog()函数,是Foundation框架中的一个函数
3)用法
NSLog(@“格式控制符”,变量列表);
4)输出内容
1. 输出时间
2. 项目名称
3. 进程id
4. 线程id
5. 要输出的内容
5)使用方式,与printf基本一样,但是可以自动换行
6)注意点
1. 第一个参数前面一定加上一个'@'符号
2. 如在结果加上\n,函数自动换行会失效
"拓展(可不补充)
补充NSLog局限性(打印C语言带汉语的字符串会出问题)
#pragma mark - Day01_10_NSString字符串
1)C语言字符串实现方式
1. 字符数组
2. 字符指针
2)OC 中的字符串存储使用NSSrting ,只能保存OC字符串
3)方式
声明: NSString *str;
OC 使用 @“”
C 使用 “”
4)注意
1. NSLog函数使用的是OC字符串,所以要加上@
2. OC字符串对应得格式占位符是%@
#pragma mark - Day01_11_OC的其他基础语法
1) NS前缀
NextStep --> cocoa --> NS
2) @符号
1. 将C字符串转换为OC字符串 @"jack"
2. OC在C的基础之上,新增了一些关键字.新增的这些关键字大部分都是以@符号开头.
3) 注释.
单行注释 //
多行注释 /* */
文档注释 /** */
vvdocumenter
4) OC中也可以定义函数.并且定义的方式一模一样.
#pragma mark - Day01_12_OC程序的编译链接流程(了解)
1. 创建1个.m的源文件.
2. 在这个文件中写上符合OC语法规范的源代码.
3. 编译.
a. 预编译: 执行预处理代码.
b. 检查语法.
c. 生成目标文件. .o的目标文件. object
4. 链接.
a. 添加启动代码.
b. 链接函数.
如果代码中使用到了框架中的功能.那么在链接的时候,就必须要告诉编译器去哪个框架中找这些函数.
cc xx.o -framework 框架名称
2) 和C程序各个阶段的文件后缀名对比.
源文件 目标文件 可执行文件
C语言 .c .o .out
OC语言 .m .o .out
#pragma mark - Day01_13_BOOL类型变量
1) OC支持C语言中的所有的数据类型.
1. 基本数据类型
2. 构造类型
数组.
结构体
枚举.
3. 指针.
4. typedef定义类型.
5. void空类型.
2) BOOL类型
1. 取值 YES 、 NO
2. 表示条件表达式结果,成立是YES 不成立是NO
3. 本质
typedef signed char BOOL;
实际上是1个有符号的char变量.
YES和NO的本质
” #define YES ((BOOL)1)
” #define NO ((BOOL)0)
3) BOOL类型使用 "%d" 打印
#pragma mark - Day01_14_Boolean类型
这个类型的变量只能存储true或者false这两个数据.
代表1个条件表达式的结果.
一般情况下.Boolean类型的变量用来保存1个条件表达式的结果.
如果条件成立,那么结果就是true 否则结果就是false.
Boolean的本质
typedef unsigned char Boolean;
是1个无符号的char变量.
true和false的本质.
”#define true 1
”#define false 0
#pragma mark - Day01_15_OC新增的数据类型
1) BOOL 类型
2) Boolean 类型
3) class 类型
4) nil 类型
5) SEL 类型
6) block 类型
#pragma mark - Day01_16_OC和C的对比
1) OC的运算符: OC支持C的所有的运算符.
1. 赋值运算符.
2. 算术运算符
3. 复合赋值运算符
4. 自增与自减运算符
5. 逗号运算符
6. 关系运算符 比较运算符
7. 逻辑运算符
8. 三元运算符
9. & 取地址运算符.
10. * 指针访问运算符.
11. 位运算符.
2) OC的控制语句: OC支持C的所有的控制语句.
1. IF
2. switch-case
3. while do-while for
4. 数组.
5. 指针.
6. 结构体 枚举
3) OC的关键字
1. OC支持C语言的所有的关键字. 并且效果是一样的.
2. OC在C的基础之上还新增了一些关键字.OC中新增的关键字绝大部分都是以@开头.
@interface
@implementation
@public
@protocol
4) OC相对于C做了两件事情.
1). 将C语言中复杂的 繁琐的语法封装的更为简单.
2). 增加了面向对象的语法.
#pragma mark - Day01_17_面向过程与面向对象(重点)
1)面向过程
在解决一个问题时,每一个步骤都自己去实现。这样的思路,我们叫面向过程。
2)面向对象
在解决一个问题时,自己没有必要去做,可以找合适的人或物来处理。这样的思路我们叫面向对象。
面向过程与面向对象是解决同1个问题的不同的思路而已.
1. 面向过程的解决问题的思路.
解决这个问题的每1个步骤,都是我自己亲自去实现
2. 面向对象的解决问题的思路.
自己不要去亲自做,而是找1个专门做这个事情的人来帮我做.找专门的人做专业的事情.
#pragma mark - Day01_18_代码世界中的面向过程与面向对象(重点)
1)面向过程
实现一个需求,每一个步骤都一步一步来实现,这种方式叫面向过程
2)面向对象
实现一个功能,找一个专门处理这个功能的对象来实现这个功能。这种方式叫面向对象
#pragma mark - Day01_19_面向过程与面向对象的优缺点分析(重点)
1). 面向过程:
C语言就是1门面向过程的语言.
缺点: 一旦需求发生变化.就要重新来. 就要把代码推倒重新来.
C语言中有函数.函数与函数之间是相互独立的. 没有人的概念.
2). 面向对象:
OC语言就是1门面向对象的语言.
优势: 后期的维护和修改非常的方便 需求变化,大不了我重新换人.
人: 1个人可以有与之相关的很多的功能.
3) 如何使用面向对象来解决问题.
1. 当你遇到1个需求的时候,千万要记住,不要自己1步1步去实现.
2. 框架.框架中就有很多人在里面听你的召唤.不同的框架中,预置了很多可以做不同事情的人. 类.
3. 首选,先去找预置的框架中是否有专门做这个事情的人.如果有,直接喊过来用
4. 如果没有.就自己造1个可以实现这个需求的人.自己造的话.不仅现在可以用这个人,并且以后也可以使用.
#pragma mark - Day01_20_什么是类和对象(较难)
1)对象
定义:对象是现实生活中的具体存在事物
世间万物皆对象 。
特点:看得见,摸的着,拿过来就可以用
2)类
定义:对某些具有相同特征和行为的事物的统称
特点:抽象的.不能直接使用.
#pragma mark - Day01_21_类与对象之间的关系
1)类和对象的关系
对象是1类事物中的1个具体存在
例:
类是制造月饼的模子,模子不能吃,所以类是不能用的.对象是根据这个模子制造出来的月饼.模子上有什么,月饼上就有什么,不会多也不会少.月饼可以吃,所以对象可以用. 所以,类模板中有什么,根据这个类模板创建出来的对象中就有什么不会多也不会少.
#pragma mark - Day01_22_如何设计类 (重要)
1) 作用
用来描述1群具有相同特征和行为的事物的.
2) 设计类的三要素.
这类事物的名称
这类事物具有的共同的特征.
这类事物具有的共同的行为.
3). 如何找类?
名词提炼法: 就是分析整个业务流程中出现了哪些名词,这些名词就是类.
然后根据类的三要素.来分析这些类有哪些特征和行为.
#pragma mark - Day01_23_如何定义一个类
1) 作用
用代码来描述1群具有相同特征和行为的事物的.
2) 设计类的三要素.
类名
特征
行为
3). 定义1个类的语法
1. 定义类的位置.
应该写在main函数的外面,直接写在源文件下.
2. 在OC中创建1个类,需要两个步骤.
'a. 类的声明
@interface 类名 : NSObject
{
这类事物具有的相同的特征.
把这些特征定义为1个1个的变量.
数据类型1 变量名1;
数据类型2 变量名2;
.......
}
写上这类事物具有的共同的行为,用方法表示.
方法的声明.
@end
'b. 类的实现.
@implementation 类名
方法的实现.
@end
3. 需要注意的是.
类所具备的共同的特征,应该是以变量的形式声明在@interface的大括弧之中.
4) 注意点
a. 类必须要有声明和实现. 声明和实现必须同时有.
b. 类名 这个类是来描述那1类事物的,直接使用这类事物的名称当做这个类的名称.
类名的每1个单词的首字母大写.
c. 在写类的时候.类名不能和框架中的类的名字冲突.
为了防止命名冲突,我们建议为我们的类加1个前缀.
d. 冒号后面的NSObject 不要去管什么意思. 照写就可以了.
e. 用来表示这类事物具有的共同的特征的变量,应该定义在@interface的大括弧中.
这些变量: 特征、属性、成员变量、实例变量、字段、实例字段.
f. 属性名称必须要以_开头.
这是规范.虽然你不遵守是可以的.但是后面的一些知识点都是以属性名下划线开头为前提的.
#pragma mark - Day01_01_OC语言的历史(了解)
1) Objective - C 是一门面向对象的高级语言
2) Objective - C 简称 obj - C \ OC
3) OC 本质是还是C语言 ,是在C语言基础上加上了面向对象的部分,把C语言中复杂的、繁琐的语法封装的更为简单
4) OC完全兼容C,可以在任何位置写C语言的代码
#pragma mark - Day01_02_OC语言的发展现状(了解)
#pragma mark - Day01_03_OC的未来(了解)
1)苹果在2014年推出了swift语言,并且在2015年年底开源
2)swift未来会成为开发iOS程序的主流,但是需要一段时间,当前夯实以OC为主
#pragma mark - Day01_04_学习目标
#pragma mark - Day01_05_第一个OC程序
#pragma mark - Day01_06_OC的源文件后缀名和main函数
1) Objective - C 源文件的后缀名是 .m C语言程序源文件的后缀名是 .c
2) Objective - C 的入口依然是 main函数
参数 可以有也可以没有
返回值 0 正常结束
"拓展
补充 main函数默认两个参数 初始化值为0
#pragma mark - Day01_07_#import指令
1)以'#'开头,是一个预编译指令
2)#import 指令,是#include的增强版
3)作用:把指定的文件,拷贝到这个指令所在的地方,无论这个文件被#import多少次,最终只会拷贝一次
4)用法:
#import "" 在项目当前目录中找
#import <> 去编译器目录中找
#pragma mark - Day01_08_Foundation框架简要介绍
1)框架概念
类和函数的集合,用来处理相关的一类功能
2)Foundation框架
提供了OC中最基本的语法支持
3)使用
使用框架里的东西,必须先把框架的头文件导入
4)一般的框架都会提供一个和框架名称一样的.h,这个文件中包含了框架中所有头文件,我们只要导入这文件,就等价于导入了这个框架的所有文件
#pragma mark - Day01_09_NSLog函数
1)自动释放池 后续会讲
2)NSLog()函数,是Foundation框架中的一个函数
3)用法
NSLog(@“格式控制符”,变量列表);
4)输出内容
1. 输出时间
2. 项目名称
3. 进程id
4. 线程id
5. 要输出的内容
5)使用方式,与printf基本一样,但是可以自动换行
6)注意点
1. 第一个参数前面一定加上一个'@'符号
2. 如在结果加上\n,函数自动换行会失效
"拓展(可不补充)
补充NSLog局限性(打印C语言带汉语的字符串会出问题)
#pragma mark - Day01_10_NSString字符串
1)C语言字符串实现方式
1. 字符数组
2. 字符指针
2)OC 中的字符串存储使用NSSrting ,只能保存OC字符串
3)方式
声明: NSString *str;
OC 使用 @“”
C 使用 “”
4)注意
1. NSLog函数使用的是OC字符串,所以要加上@
2. OC字符串对应得格式占位符是%@
#pragma mark - Day01_11_OC的其他基础语法
1) NS前缀
NextStep --> cocoa --> NS
2) @符号
1. 将C字符串转换为OC字符串 @"jack"
2. OC在C的基础之上,新增了一些关键字.新增的这些关键字大部分都是以@符号开头.
3) 注释.
单行注释 //
多行注释 /* */
文档注释 /** */
vvdocumenter
4) OC中也可以定义函数.并且定义的方式一模一样.
#pragma mark - Day01_12_OC程序的编译链接流程(了解)
1. 创建1个.m的源文件.
2. 在这个文件中写上符合OC语法规范的源代码.
3. 编译.
a. 预编译: 执行预处理代码.
b. 检查语法.
c. 生成目标文件. .o的目标文件. object
4. 链接.
a. 添加启动代码.
b. 链接函数.
如果代码中使用到了框架中的功能.那么在链接的时候,就必须要告诉编译器去哪个框架中找这些函数.
cc xx.o -framework 框架名称
2) 和C程序各个阶段的文件后缀名对比.
源文件 目标文件 可执行文件
C语言 .c .o .out
OC语言 .m .o .out
#pragma mark - Day01_13_BOOL类型变量
1) OC支持C语言中的所有的数据类型.
1. 基本数据类型
2. 构造类型
数组.
结构体
枚举.
3. 指针.
4. typedef定义类型.
5. void空类型.
2) BOOL类型
1. 取值 YES 、 NO
2. 表示条件表达式结果,成立是YES 不成立是NO
3. 本质
typedef signed char BOOL;
实际上是1个有符号的char变量.
YES和NO的本质
” #define YES ((BOOL)1)
” #define NO ((BOOL)0)
3) BOOL类型使用 "%d" 打印
#pragma mark - Day01_14_Boolean类型
这个类型的变量只能存储true或者false这两个数据.
代表1个条件表达式的结果.
一般情况下.Boolean类型的变量用来保存1个条件表达式的结果.
如果条件成立,那么结果就是true 否则结果就是false.
Boolean的本质
typedef unsigned char Boolean;
是1个无符号的char变量.
true和false的本质.
”#define true 1
”#define false 0
#pragma mark - Day01_15_OC新增的数据类型
1) BOOL 类型
2) Boolean 类型
3) class 类型
4) nil 类型
5) SEL 类型
6) block 类型
#pragma mark - Day01_16_OC和C的对比
1) OC的运算符: OC支持C的所有的运算符.
1. 赋值运算符.
2. 算术运算符
3. 复合赋值运算符
4. 自增与自减运算符
5. 逗号运算符
6. 关系运算符 比较运算符
7. 逻辑运算符
8. 三元运算符
9. & 取地址运算符.
10. * 指针访问运算符.
11. 位运算符.
2) OC的控制语句: OC支持C的所有的控制语句.
1. IF
2. switch-case
3. while do-while for
4. 数组.
5. 指针.
6. 结构体 枚举
3) OC的关键字
1. OC支持C语言的所有的关键字. 并且效果是一样的.
2. OC在C的基础之上还新增了一些关键字.OC中新增的关键字绝大部分都是以@开头.
@interface
@implementation
@public
@protocol
4) OC相对于C做了两件事情.
1). 将C语言中复杂的 繁琐的语法封装的更为简单.
2). 增加了面向对象的语法.
#pragma mark - Day01_17_面向过程与面向对象(重点)
1)面向过程
在解决一个问题时,每一个步骤都自己去实现。这样的思路,我们叫面向过程。
2)面向对象
在解决一个问题时,自己没有必要去做,可以找合适的人或物来处理。这样的思路我们叫面向对象。
面向过程与面向对象是解决同1个问题的不同的思路而已.
1. 面向过程的解决问题的思路.
解决这个问题的每1个步骤,都是我自己亲自去实现
2. 面向对象的解决问题的思路.
自己不要去亲自做,而是找1个专门做这个事情的人来帮我做.找专门的人做专业的事情.
#pragma mark - Day01_18_代码世界中的面向过程与面向对象(重点)
1)面向过程
实现一个需求,每一个步骤都一步一步来实现,这种方式叫面向过程
2)面向对象
实现一个功能,找一个专门处理这个功能的对象来实现这个功能。这种方式叫面向对象
#pragma mark - Day01_19_面向过程与面向对象的优缺点分析(重点)
1). 面向过程:
C语言就是1门面向过程的语言.
缺点: 一旦需求发生变化.就要重新来. 就要把代码推倒重新来.
C语言中有函数.函数与函数之间是相互独立的. 没有人的概念.
2). 面向对象:
OC语言就是1门面向对象的语言.
优势: 后期的维护和修改非常的方便 需求变化,大不了我重新换人.
人: 1个人可以有与之相关的很多的功能.
3) 如何使用面向对象来解决问题.
1. 当你遇到1个需求的时候,千万要记住,不要自己1步1步去实现.
2. 框架.框架中就有很多人在里面听你的召唤.不同的框架中,预置了很多可以做不同事情的人. 类.
3. 首选,先去找预置的框架中是否有专门做这个事情的人.如果有,直接喊过来用
4. 如果没有.就自己造1个可以实现这个需求的人.自己造的话.不仅现在可以用这个人,并且以后也可以使用.
#pragma mark - Day01_20_什么是类和对象(较难)
1)对象
定义:对象是现实生活中的具体存在事物
世间万物皆对象 。
特点:看得见,摸的着,拿过来就可以用
2)类
定义:对某些具有相同特征和行为的事物的统称
特点:抽象的.不能直接使用.
#pragma mark - Day01_21_类与对象之间的关系
1)类和对象的关系
对象是1类事物中的1个具体存在
例:
类是制造月饼的模子,模子不能吃,所以类是不能用的.对象是根据这个模子制造出来的月饼.模子上有什么,月饼上就有什么,不会多也不会少.月饼可以吃,所以对象可以用. 所以,类模板中有什么,根据这个类模板创建出来的对象中就有什么不会多也不会少.
#pragma mark - Day01_22_如何设计类 (重要)
1) 作用
用来描述1群具有相同特征和行为的事物的.
2) 设计类的三要素.
这类事物的名称
这类事物具有的共同的特征.
这类事物具有的共同的行为.
3). 如何找类?
名词提炼法: 就是分析整个业务流程中出现了哪些名词,这些名词就是类.
然后根据类的三要素.来分析这些类有哪些特征和行为.
#pragma mark - Day01_23_如何定义一个类
1) 作用
用代码来描述1群具有相同特征和行为的事物的.
2) 设计类的三要素.
类名
特征
行为
3). 定义1个类的语法
1. 定义类的位置.
应该写在main函数的外面,直接写在源文件下.
2. 在OC中创建1个类,需要两个步骤.
'a. 类的声明
@interface 类名 : NSObject
{
这类事物具有的相同的特征.
把这些特征定义为1个1个的变量.
数据类型1 变量名1;
数据类型2 变量名2;
.......
}
写上这类事物具有的共同的行为,用方法表示.
方法的声明.
@end
'b. 类的实现.
@implementation 类名
方法的实现.
@end
3. 需要注意的是.
类所具备的共同的特征,应该是以变量的形式声明在@interface的大括弧之中.
4) 注意点
a. 类必须要有声明和实现. 声明和实现必须同时有.
b. 类名 这个类是来描述那1类事物的,直接使用这类事物的名称当做这个类的名称.
类名的每1个单词的首字母大写.
c. 在写类的时候.类名不能和框架中的类的名字冲突.
为了防止命名冲突,我们建议为我们的类加1个前缀.
d. 冒号后面的NSObject 不要去管什么意思. 照写就可以了.
e. 用来表示这类事物具有的共同的特征的变量,应该定义在@interface的大括弧中.
这些变量: 特征、属性、成员变量、实例变量、字段、实例字段.
f. 属性名称必须要以_开头.
这是规范.虽然你不遵守是可以的.但是后面的一些知识点都是以属性名下划线开头为前提的.
OC基础-第1天的更多相关文章
- 【OC基础语法考试】
OC基础语法已经全部学完,但是这些知识只是最基础的,还有很多高级知识,这个可能需要后面慢慢的去学习才能体会到.接下来我会总结前面的OC基础语法,如果大家发现有什么不正确的地方,请指正,小弟是新生,多请 ...
- iOS 阶段学习第11天笔记(OC基础知识)
iOS学习(OC语言)知识点整理 一.OC基础知识 1)#import 用于导入头文件,预处理阶段加载引用,只加载一次. 2)OC 依赖于Foundation框架下的头文件Foundation.h, ...
- OC基础笔记目录
OC基础(1) Objective-C简介 OC和C对比 第一个OC程序 面向对象思想 OC基础(2) 类与对象 类的设计 第一个OC类 对象方法的声明和实现 类方法的声明和实现 OC基础(3) 对象 ...
- OC基础 文件管理
OC基础 文件管理 1.文件管理类NSFileManager对象的创建: NSFileManager *fm = [NSFileManager defaultManager]; 2.文件操作: (1 ...
- OC基础 NSDate
OC基础 NSDate #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @auto ...
- OC基础 NSData
OC基础 NSData 1.NSString转NSData //NSString转NSData NSString *string = @"abcd12345"; NSData *d ...
- OC基础 代理和协议
OC基础 代理和协议 1.协议 (1)oc语言中得协议:一组方法列表,不需要我们自己实现,由遵守协议的类来实现协议所定制的方法. (2)协议的使用步骤:制定协议-->遵守协议-->实现协议 ...
- OC基础 内存管理
OC基础 内存管理 我们所了解的c语言内存管理,如下: (1)c语言的内存分配:char *p = (char*)malloc(100*sizeof(char)); (2)c语言的内存释放:free ...
- OC基础 类的三大特性
OC基础 类的三大特性 OC的类和JAVA一样,都有三大特性:继承,封装,多态,那么我们就来看一下OC中类的三大特性. 1.继承 继承的特点: (1)子类从父类继承了属性和方法. (2)子类独有的属 ...
- OC基础 点语法的使用
OC基础 点语法的使用 1.创建一个Student类继承于NSObject,Student.h文件 #import <Foundation/Foundation.h> @interface ...
随机推荐
- iOS开发之详解正则表达式
本文由Charles翻自raywenderlich原文:NSRegularExpression Tutorial: Getting Started更新提示:本教程被James Frost更新到了iOS ...
- 曾经的pc端项目踩到的一些兼容性的坑及其解决方案
曾经公司pc端项目一直最低兼容到IE7,要求和chrome下浏览效果一致,真心坑坏了我和另外一个小伙伴(另一个小伙伴以前也没处理过兼容问题).不过还好,在这里真心感谢鑫哥博客的详解,从底层原理讲到了具 ...
- 单独批次性任务采用MySQL定时器解决需求
有时候我们在开发的时候会遇到一些需求是在某个固定的时间段实现某些特殊功能,只做一次或者有规律的每分钟一次每小时一次,那么这个时候我们可以启用MySQL的定时器来帮忙解决该问题. 比如,有一个场景是要求 ...
- function和感叹号,运算符号的转化
1.下面的程序经过运算之后,a为true,这个很好理解,但是函数怎么会运行呢? var a = !function(){ alert('message'); }(); console.log(a); ...
- Tokumx 安装指南(做法如同MongoDB)
安装说明系统环境:Centos-6.3安装软件:mongodb-linux-x86_64-2.2.2.tgz下载地址:http://www.mongodb.org/downloads安装机器:192. ...
- 关于STM32下载问题的简单理解
首先STM32分为两种下载方式1.ISP(IN-SYSTEM-PROGRAMMING在线编程) 2.JTAG 这里简单谈谈对ISP下载的理解: ISP下载是51单片机,STM等单片机比较常见的一种下 ...
- 理解C++ 宏
1.什么是宏,它解决什么问题? 宏的本质是文本替换,考虑下面的需求,程序中多次使用圆周率Pi,在每个地方都使用3.1415,显然很愚蠢.有没有好的办法呢?使用宏,如下: #define Pi 3.14 ...
- IE下载打印文件的时候,下载打印闪一下就没有了
这是因为我们的浏览器没有将文件下载的自动提示设为启用.点击IE菜单栏中的“工具”—“Internet选项”-安全—可信站点—自定义级别 1,添加信任站点 打开IE浏览器,输入需要下载文件的地址 选择[ ...
- dojo(四):ajax请求
储备知识 1.在介绍新版本的ajax请求之前,需要先了解一些dojo/Deferreds. 初次听到“Deferred”这个概念,可能会觉得这是一个神秘的东西.实际上它在执行异步操作的时候非常强大,例 ...
- CodeMachine Debugger Extension DLL
http://www.codemachine.com/downloads.html http://www.codemachine.com/tool_cmkd.html#stack