【content】
☟ 定义性总结
▌进制转换
二进制B (Binary)
八进制O (Octal) 输出时以 0 开头【eg】0123 = (83)10
十进制D (Decimal)
十六进制H (Hexadecimal) 输出时以 0X/0x 开头【eg】0x123 = (291)10
☞R进制转换为十进制:加权相乘再相加(以小数点为起点,分别向左右两边进行)
☞十进制转换为R进制:
1)整数:除R取余法(倒读)
2)小数:乘R取整法(正读)
☞R进制之间相互转换:
1)每位8进制数相当于3位二进制数 2^3=8
2)每位16进制数相当于4位二进制数 2^4=16
eg: (1000100)2 = (1 000 100)2 = (104)8 = (44)16
▌信息存储单元
☞位(bit):量度数据的最小单位,表示1位二进制信息
☞字节(bite):1byte = 8bit
常用单位:(1024=2^10)
1TB=1024GB
1GB=1024MB
1MB=1024KB
1KB=1024B
1B=8b
☞字(word): 字是位的组合,并作为一个独立的信息单元处理。常用的固定字长有8、16、32、64位
☞机器字长:参与运算的寄存器中所含有的二进制数的位数,代表了机器的精度。如32位、64位。
▌二进制编码表示
☞原码:符号+绝对值表示 符号位正为0,负为1
☞反码:正数——原反补码相同;负数(和原码比较运算)——符号位不变,其余位按位取反;
☞补码:正数——原反补码相同;负数(和原码比较运算)——符号位不变,其余位按位取反再加1;
【tips】符号位可作为数值参与运算,最后仍可得到正确的结果符号,符号无需单独处理。
▌c++基本数据类型
【tips】对于字符常量char,若char c;定义一个字符常量,则使用单引号进行初始化赋值,若使用双引号,会被认为 是一个字符串,会在末尾自动加上\0,会报错。
char c;
c = 'a'; //存储为 a
c = "a"; //存储为 a \0 错×
【eg】int类型的变量占4个字节,1字节=8位二进制数,即 int型 共 32 位二进制数。
▌运算符和表达式
// 运算符优先级见 c++运算符优先级归纳_赵民勇的博客-优快云博客
☞逗号运算和逗号表达式:
//表达式1,表达式2
//先求解 1 ,再求解 2 ,输出结果为表达式 2 的值
a = 3, a * 3;
printf("%d", a);
【结果】a = 9
☞移位运算符:
C语言之移位操作符、位操作符详解_哆啦A梦的110的博客-优快云博客
☞条件运算符(c++中唯一一个三元运算符):
//表达式1 ?表达式2 :表达式3
//表达式1 必须是布尔(bool)类型 条件表达式的最终类型应该是2和3中较高的类型
//先求解表达式1,若1的结果为TRUE,则执行表达式2;若1的结果为FALSE,则执行表达式3
int score = 78;
cout << (score >= 60 ? "pass" : "fail");
【结果】pass
▌数据类型的转换
☞隐含转换——低类型数据转换为高类型数据:
(类型越高,数据的表示范围越大,精度越高)
☞显式转换——强制类型转换:
float a = 7.56;
int b, c, e; //转换到int类型并存储到整型变量中
//强制类型转换
//显式转换——a保持不变
b = int(a);
c = (int)a;
//类型转换操作符
e = static_cast<int>(a);
▌基本结构——顺序、循环、选择及其他控制语句
详情见 ☟
【eg || for循环次数判断】执行完下列语句后,n的值为多少
int n;
for (n = 0; n < 100; n++) { }
【结果:n = 100】
定义性知识总结
▌面向对象编程语言的特点
①能更直接地描述客观世界中存在的事物以及它们之间的关系;
②将客观事物看作具有属性和行为(或称服务)的对象;
③通过抽象出一类对象的共同属性和行为,形成类;
④通过类的继承和多态实现代码重用。
▌结构化程序设计方法
①自顶而下、逐步求精;
②程序结构是按照功能划分为若干个基本模块,这些模块形成一个树状结构;
③各模块之间的关系尽可能简单,在功能上相对独立;
④每个模块内部均是由顺序、选择、循环三个基本结构构成;
⑤其模块化实现的具体方法是使用子程序。
▌面向对象方法、对象、类、封装、多态
①面向对象的方法:
它将数据以及对数据的操作方法封装在一起,作为一个相互依存、不可分离的整体——对象。对同类型对象抽象出其共性,形成类。
类中的大多数数据,只能用本类的方法进行处理;类通过一个简单的外部接口(public)与外界发生关系;对象与对象之间通过消息进行通信。
②对象:
是系统中用来描述客观事物的一个实体,它是用来构成系统的一个基本单位。对象由一组属性(用来描述对象静态特征的数据项)和一组行为(用来描述对象动态特征的操作序列)构成。
③类:
是具有相同属性和服务的一组对象的集合,为属于该类的全部对象提供了抽象的描述,类的内部包括属性和行为两个部分。
分类的依据对象原则是抽象。
④封装——面向对象程序设计方法的一个重要原则:
是把对象的属性和服务结合成一个独立的系统单位,并尽可能地隐蔽对象的内部细节(只保留有限的外部接口,使之与外部发生联系)。
⑤▲继承——面向对象程序设计方法能够提高软件开发效率的重要原因:
是指特殊类的对象拥有一般类的全部属性和服务,成为特殊类对一般类的继承。
⑥▲多态性:
是指在一般类中定义的功能或行为,在被特殊类继承后,可以具有不同的具体实现。