c++ || 基础知识总结

本文涵盖计算机基础知识要点,包括进制转换、信息存储单元、二进制编码表示等核心概念,详细解析C++基本数据类型及运算规则,介绍顺序、循环等基本结构,深入探讨面向对象编程语言特点及结构化程序设计方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

【content】

▌进制转换

▌信息存储单元

▌二进制编码表示

▌c++基本数据类型

▌运算符和表达式

▌数据类型的转换

▌基本结构——顺序、循环、选择及其他控制语句

☟ 定义性总结

▌面向对象编程语言的特点

▌结构化程序设计方法

▌面向对象方法、对象、类、封装、多态


▌进制转换

进制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);

▌基本结构——顺序、循环、选择及其他控制语句

详情见

C语言:顺序、选择、循环结构_◎菜澜子的博客-优快云博客

 【eg || for循环次数判断】执行完下列语句后,n的值为多少

    int n;
    for (n = 0; n < 100; n++) {  }

 【结果:n = 100】


定义性知识总结

▌面向对象编程语言的特点

①能更直接地描述客观世界中存在的事物以及它们之间的关系

②将客观事物看作具有属性和行为(或称服务)的对象

③通过抽象出一类对象共同属性和行为,形成

④通过类的继承多态实现代码重用

结构化程序设计方法

自顶而下、逐步求精

②程序结构是按照功能划分为若干个基本模块,这些模块形成一个树状结构

③各模块之间的关系尽可能简单,在功能上相对独立

④每个模块内部均是由顺序、选择、循环三个基本结构构成;

⑤其模块化实现的具体方法是使用子程序

▌面向对象方法、对象、类、封装、多态

①面向对象的方法

它将数据以及对数据的操作方法封装在一起,作为一个相互依存、不可分离的整体——对象。对同类型对象抽象出其共性,形成

类中的大多数数据,只能用本类的方法进行处理;类通过一个简单的外部接口(public)与外界发生关系;对象与对象之间通过消息进行通信。

②对象: 

是系统中用来描述客观事物的一个实体,它是用来构成系统的一个基本单位。对象由一组属性(用来描述对象静态特征的数据项)和一组行为(用来描述对象动态特征的操作序列)构成。

③类: 

是具有相同属性和服务的一组对象的集合属于该类的全部对象提供了抽象的描述,类的内部包括属性和行为两个部分。

分类的依据对象原则是抽象。

④封装——面向对象程序设计方法的一个重要原则: 

是把对象的属性和服务结合成一个独立的系统单位,并尽可能地隐蔽对象的内部细节(只保留有限的外部接口,使之与外部发生联系)。

继承——面向对象程序设计方法能够提高软件开发效率的重要原因: 

是指特殊类的对象拥有一般类的全部属性和服务,成为特殊类对一般类的继承。

多态性: 

是指在一般类中定义的功能或行为,在被特殊类继承后,可以具有不同的具体实现。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值