好文档 - 专业文书写作范文服务资料分享网站

C++知识点(整理版)

天下 分享 时间: 加入收藏 我要投稿 点赞

一、C++标识符的命名规则

1. 所有标识符必须由一个字母(a~z或A~Z)或下划线(_)开头; 2. 标识符的其它部分可以用字母、下划线或数字(0~9)组成;

3. 大小写字母表示不同意义, 即代表不同的标识符,如前面的cout和Cout;

二、如何正确地声明变量及其初始化

2. C++中变量定义的格式:

类型名 变量名1,变量名2,…,变量名n ; 如:int num1, num2;

(2.1)在C++中,每个变量在使用前必须被定义,以便编译器检查变量使用的合法性。变量定义只是给变量分配相应的空间。

(2.2)C++允许在定义变量的同时给变量赋初值。变量未被赋值前,值为未知 格式: 类型名 变量名 = 初值;或者:类型名 变量名(初值);

如:int count = 0; 或 int count(0); 都是定义整型变量count,并为它赋初值0。

可以给被定义的变量中的一部分变量赋初值,如:int sum = 0, count = 0, num; (2.3)一旦定义了一个变量,可以将一个常量赋给该变量。变量赋值过程是“覆盖”过程,用新值去替换旧值 如 int a; a=123; 或 a = 0x123; 都是正确的

(2.4)在C++中, 定义变量时没有赋初值,然后直接引用该变量是危险的!!! 3. 数据类型(data type):数据的编码方式、值域和可执行的操作。数据类型包括两个方面:数据的取值范围、可用的操作。C/C++中的数据类型分为两大类:基本数据类型:整型、浮点型、字符型和布尔型构造数据类型:字符串、数组、结构、联合和枚举

(3.1)整型(int):以补码形式存储。

基本型 int ;长整型long: long / long int

(3.1.1)整数运算时要注意数据的表示范围。如整数用两个字节表示,正整数 32767 加 1 的结果为 -32768。这称为整数运算的溢出,系统不检查这样的错误,程序员必须自己保证程序中不出现这样的错误。

(3.1.2)在某些应用中,不可能出现负数,则整型数中有一半的数值范围是被浪费的。因

此在C/C++中可以将所有的数都看成正整数,称为无符号数。

无符号数的定义:在各种整数类型前加上关键词unsigned,变成unsigned int, unsigned short, unsigned long

(3.2) 实型:以浮点表示,操作类似于整型,浮点数无法精确表示。 (3.2.1)浮点类型的分类: 单精度 float ;双精度 double (3.3)字符型(char):存放一个字母或符号,占一个字节,存放的是字符的内码。可执行比较、连接等运算。具有双重属性:整数属性和字符属性,整数属性:字符类型即单字节的整数类,字符属性:数据值即为相应字符的 Ascii 码。

字符类型名:char。可分为可打印字符:小写字母、大写字母、数字、标点符号、空格等;非打印字符:换行和报警字符或响铃 等控制字符

(3.4)布尔型(bool): 只有“真”、“假”两个值。可执行判断运算。如 bool flag=true;

(3.5)字符串(string):是类类型,用双引号“ ”表示,可执行字符串比较,连接应用时要加 #include 如 string str= “dfhdsf”;

三、如何声明常量

4.常量:值的直接表示。如1、3、1.57、“A?等,又称直接量。 (4.1) 整型常量可用十进制、八进制和十六进制表示:

如十进制: 123, -234;八进制: 0123 十六进制:0x123, 0x3a2f (4.2)浮点数常量有两种表示法: (1)十进制表示:1.23 , 3.14;

(2)科学计数法:尾数e指数 123e2=12300 2.25e-3=0.00225 ; 注意:尾数不能为空,指数必须为整数

(4.3)字符常量:”a?, “S?, ”2?等用一对单引号括起来的数据。字符串常量用双引号 (4.4)命名常量:为值指定一个描述性的文字,增加程序的可读性。

在C++语言中,用const修饰,如 const double PI =3.14; 见 PI即知3.14。注意一般变量名需大写,如PI。

二、算术运算符号及其运行规则

a) 整数除整数 b) % 求模运算

5.算术运算符:+(加) -(减) *(乘) / (求商) %(求余)

(5.1)“-”可为二元运算符,也可为一元运算符,其余所有的算术运算符都是二元运算符。

(5.2)优先级:高 * / %, 低 + --

(5.3)整型与整型数运算,结果为整型,如 5 / 2 = 2 ;整型与浮点数运算,结果为浮点数,如5 / 2.0 = 2.5 ;字符与整型数运算,结果为整型;字符与浮点数运算,结果为浮点数。 浮点数与浮点数运算,结果为浮点数。 “%”运算符:取余,其两边都必须是整型数。 6.关系运算符: >, >=, ==, <=, <, !=

(6.1) 优先级:高于赋值运算符,低于算术运算符。关系运算符内部:==和 !=较低

(6.2)关系表达式:用关系运算符将二个表达式连接起来称为关系表达式。关系表达式的结果是 true 或 false。“等于”运算符是由两个等号组成。常见的错误是在比较相等时用一个等号。==(相等),=(赋值) 7. 逻辑运算符 :&& (and) || (or) ! (not) (7.1)优先级: ! 高于 关系运算符 高于 && 高于||

(7.2)逻辑表达式:由逻辑运算符连接起来的表达式,其结果为“真(true)”或“假(false)” 逻辑表达式在执行时,先处理左边。如左边已能决定此逻辑表达式的结果,则右边不执行。因此,在&& 逻辑表达式中,应把false可能性较大的条件放在左边,在||表达式中,应把true可能性较大的条件放在左边,这样可以减少程序执行的时间

8.赋值运算符:= 的优先级比算术运算符低

(8.1)赋值语句: 把一个值赋给一个变量。如x = y + z; x = 3.14; 赋值语句的左边是变量,右边是表达式。

(8.2)赋值表达式格式:<变量> = <表达式> 如x = x + 2。

作用:将右边的表达式的值存入左边的变量,整个表达式的值是右边的表达式的结果。 赋值运算符是右结合的

(8.3)左值(lvalue): 在C++中,能出现在赋值运算符左边的表达式称为左值 右值(rvalue):赋值运算符右边的表达式的值 (8.4)赋值语句:赋值表达式后面加上分号。

(8.5)将赋值表达式作为更大的表达式的一部分 。如:a = (x = 6) + (y = 7) 等价于分别将x 和 y 的值设为6 和 7,并将6和7相加,结果存于变量a

(8.6)其他运算符与赋值运算符结合的运算符称为复合赋值运算符。 格式:变量 op= 表达式; 等价于:变量 = 变量 op 表达式;

常用的复合赋值运算符有:+=,-=,*=,/=,%= 如: balance += deposit; balance -= surcharge; x /= 10; salary *=2;

(8.7)赋值和运算时的自动类型转换,在进行赋值操作时,会发生类型转换,将取范围小的类型转为取值范围大的类型是安全的反之是不安全的,如果大类型的值在小类型能容纳的范围之内,则平安无事 强制类型转换: ①(类型名)(表达式);或类型名 (表达式);如z = (double)x / y; ②静态转换(static_cast):用于编译器隐式执行的任何类型转换

格式:转换类型<类型名> (表达式) 如 z = static_cast(x) / y; 1. 单个分号组成的语句成为空语句

2. 用{ }括起来的一组语句称为复合语句。在逻辑上看成一个语句。 v 复合语句可以放在任何单语句出现的地方。

3. 在复合语句中可以定义变量,但必须定义在最前面。 4. 逗号表达式语句格式:表达式1,表达式2,…,表达式n

v 逗号运算符的优先级是所有运算符中最低的 如a的初值为0,则表达式 a += 1, a += 2, a += 3, a += 4, a += 5的结果为 15 5. 前置 ++i, ---i (先执行i+1或i-1,再使用i值) 6.后置 i++, i--- (先使用i值,再执行i+1或i-1)

If语句

c) 形式

d) 三种If语句的执行流程

9. 控制语句: 改变程序中语句的执行次序。 (9.1)if语句:

①两个分支:条件测试为true时所执行的程序块叫做then子句,条件为false时执行的语句叫做else子句。 格式

( 1 ) if (条件测试) 语句;即else语句可省略 格式 (2) if (条件测试) 语句1; else 语句2; eg. if (grade >= 60) cout << “passed”; eg. if (grade >= 60) cout << “passed”; else cout << “failed”;

(3)多分支语句:条件1为true时所执行的程序块1,条件1为false但满足条件2时执行的语句块2,。依次类推,条件n-1为false但满足条件n时执行else语句。常见的有 3分支语句:if—else if-else。 eg. if (grade >= 90) cout << “A”; else if (grade >= 80) cout << “B”; else if (grade >= 70) cout << “C”; else if (grade >= 60) cout << “D”; else cout <<”E”;

(9.2)条件语句使用注意

①条件的结果值应该是 true 或 false,它们是C++中bool类型的值

②条件可为任意表达式,不一定是关系表达式。0 为false,非 0 为true。 ③if 语句可以没有else子句。合理的缩排。

④if语句的then子句和else子句含有if语句,称为if语句的嵌套。 eg if (x < 100) {

if (x < 90) 语句1; else if (x<80) 语句2; else 语句3; }

else 语句4;

⑤歧义性:如最后一个else跟哪个if 配对.。 eg if (y != 0) if (x != 0) result = x / y;

else cout<<“error :y == 0”<

配对原则:每个else子句是和在它之前最近的一个没有else子句的if语句配对。 ⑥在每个if-else语句后加一对大括号{ }是一种良好习惯,特别是有两个以上的复合语句需要执行时。

(9.2)条件表达式:作用:更加简练的用来表达条件执行的机制 ?:运算符 :问号冒号运算符

形式 : (条件) ? 表达式1 : 表达式2 eg: max = x > y ? x :y;

循环语句

e) 形式

f) 三种循环语句的区别 g) 三种循环语句的执行流程

10.循环语句:一个完整的循环结构一般由四部分组成: (10.1)For 语句:主要用于计数循环

v 格式:for(表达式1;表达式2;表达式3) 语句;or{语句快;} 可以理解为:for(循环变量赋初值;循环条件;循环变量增值) 符合循环条件时的执行语句

v 循环体可以是复合语句或空语句。

v 循环里所有语句的一次完全执行称为一个循环周期。

v 执行过程:先执行表达式1,再执行判断表达式2,如果为true,执行一次循环体

(即一个循环周期),接着执行表达式3,然后重新执行判断表达式2,若为true,又执行一次循环体,重复直至判断表达式2为false,,最后跳出整个循环。若开始执行条件表示2为false, 循环体一次也不执行。

v For循环的三个表达式可以是任意表达式。三个表达式都是可选的。

v 如果循环不需要任何初始化工作,则表达式1可以缺省。如循环前需要做多个初始

化工作,可以将多个初始化工作组合成一个逗号表达式,作为表达式1。 如for (int i=0,; i<=10; ++i) ;

v 表达式2也不一定是关系表达式。它可以是逻辑表达式,甚至可以是算术表达式。

当表达式2是算术表达式时,只要表达式的值为非0,就执行循环体,表达式的值为0时退出循环。

v 如果表达式2省略,即不判断循环条件,循环将无终止地进行下去。无终止的循环

称为“死循环” ,最简单的死循环是 for ( ;);

(10.2)While语句: 与for循环等价,可相互代替。 v 格式:while(表达式) 语句;or { 语句块;}

v 执行过程:先计算出条件表达式的值。如果是false,循环终止;如果是true,整个

循环体将被执行,而后又回到while语句的第一行,再次对条件进行检查,若为true,接着执行循环体,重复直到条件为false,,跳出整个循环。

v 用途:用于循环次数不定的循环。循环是否结束取决于某一个变量的值(标记控制重复)

v 在for和while语句之后一般没有分号,有分号表示循环体就是分号之前的内容(空循环体)

(10.3) Do- While语句

v 格式: do语句;or { 语句块;} while (表达式);

v 执行过程:首先执行语句,然后判断表达式的值。如果表达式为0,继续向下执行,

否则,再次执行语句,再次判断表达式的值

v 用途:用于至少执行一次的循环。注意后面有分号; 11跳转语句:

v break语句:跳出整个循环或switch语句。若有多重循环,跳出含break最近的循

环体。

v continue语句:跳出当前本次循环,接着判断是否执行下次循环周期。

12 几种典型的循环。注意格式及应用

v 输入验证循环:以下两种等价,右边一个常用 cout <<\请输入半径:\提示输入 do{ cout <<“请输入半径:\ cin>>radius;

area = PI * radius * radius }

while ( radius < 0) ;// 当radius < 0,重复输入,直到>0 2.while(true) // 或while (1) for ( ) {

cout << “输入一个正整数:\提示用户并读入数据 cin >>num;

if (num == -1) break; // if (num==标志) 跳出; sum += num; //处理数据 }

v 查询循环

C++知识点(整理版)

一、C++标识符的命名规则1.所有标识符必须由一个字母(a~z或A~Z)或下划线(_)开头;2.标识符的其它部分可以用字母、下划线或数字(0~9)组成;3.大小写字母表示不同意义,即代表不同的标识符,如前面的cout和Cout;二、如何正确地声明变量及其初始化2.C++中变量定义的格式:类型名
推荐度:
点击下载文档文档为doc格式
86jo32ia7l77xpo5846y5ap1c1kzfj00qek
领取福利

微信扫码领取福利

微信扫码分享