Sorry, your browser cannot access this site
This page requires browser support (enable) JavaScript
Learn more >

C++学习笔记一

基本数据类型

类型 含义 最小尺寸
bool 布尔类型 未定义
char 字符 8位
short 短整型 16位
int 整形 16位
long 长整形 32位
long long 长整形 64位
float 单精度浮点型 6位有效数字
double 双精度浮点型 10位有效数字
long double 扩展精度浮点型 10位有效数字

运算符优先级表

优先级 运算符 名称/含义 形式 方向 说明
1 [] 数组下标 数组名[常量表达式] 左->右 -
1 () 圆括号 (表达式)/函数名(形参) 左->右 -
1 . 成员选择(对象) 对象.成员名 左->右 -
1 -> 成员选择(指针) 对象->成员名 左->右 -
2 - 负号运算符 -表达式 左<-右 -
2 ~ 按位反 ~表达式 左<-右 单目
2 ++ 自增 ++变量名/变量名++ 左<-右 单目
2 自减 –变量名/变量名– 左<-右 单目
2 * 取值 *指针变量 左<-右 单目
2 & 取地址 &变量名 左<-右 单目
2 ! 逻辑非 !表达式 左<-右 单目
2 (类型) 强制类型转换 (类型)表达式 左<-右 -
2 size of 长度运算符 size of(表达式) 左<-右 -
3 / 表达式/表达式 左->右 双目
3 * 表达式*表达式 左->右 双目
3 % 求余 表达式%表达式 左->右 双目
4 + 表达式+表达式 左->右 双目
4 - 表达式-表达式 左->右 双目
5 << 左移 变量<<表达式 左->右 双目
5 >> 右移 变量>>表达式 左->右 双目
6 > 大于 表达式>表达式 左->右 双目
6 >= 大于等于 表达式>=表达式 左->右 双目
6 < 小于 表达式<表达式 左->右 双目
6 <= 小于等于 表达式<=表达式 左->右 双目
7 == 等于 表达式==表达式 左->右 双目
7 != 不等于 表达式!=表达式 左->右 双目
8 & 按位与 表达式&表达式 左->右 双目
9 ^ 按位异或 表达式^表达式 左->右 双目
10 | 按位或 表达式|表达式 左->右 双目
11 && 逻辑与 表达式&&表达式 左->右 双目
12 11 逻辑或 表达式11表达式 左->右 双目
13 ?: 条件运算符 表达式1?表达式2:表达式3 左<-右 三目
14 = 赋值 变量=表达式 左<-右 -
14 /= 除后赋值 变量/=表达式 左<-右 -
14 *= 乘后赋值 变量*=表达式 左<-右 -
14 %= 取余赋值 变量%=表达式 左<-右 -
14 += 加后赋值 变量+=表达式 左<-右 -
14 -= 减后赋值 变量-=表达式 左<-右 -
14 <<= 左移赋值 变量<<=表达式 左<-右 -
14 >>= 右移赋值 变量>>=表达式 左<-右 -
14 &= 按位与后赋值 变量&=表达式 左<-右 -
14 ^= 按位异或后赋值 变量^=表达式 左<-右 -
14 |= 按位或后赋值 变量|=表达式 左<-右 -
15 , 逗号 表达式,表达式 左->右 -

控制流

while语句

while语句反复执行一段代码,直到给定的条件为假为止。

1
2
3
while(条件){
循环体
}

do while语句

do while语句与while差不多,只不过while是在每次开始判断条件,而do while在每次结束判断。

1
2
3
do{
循环体
}while(条件)

for语句

while语句在循环体中递增变量非常的频繁,所有专门定义了第二种循环语句for语句来简化这种模式。
for语句头可以省略掉初始化、循环条件、表达式中的任何一个。
同时for语句支持范围循环,这种循环用于遍历容器或其他序列的所有元素。

1
2
3
4
5
6
7
for(初始化语句;循环条件;表达式){
循环体
}
//范围for语句
for(定义变量:序列){
循环体
}

if语句

用于条件执行

1
2
3
4
5
6
7
if(表达式1){
分支1
}else if(表达式2){
分支2
}else{
分支3
}

switch语句

提供了一种便利的在若干个选项中做出选择的语句。
case标签:必须是整形常量表达式,如果表达式与某个case标签匹配成功,程序从该标签后的第一条开始执行,直到switch结尾或遇到一条break语句为止。
default标签:在没有任何一个case标签匹配上switch表达式的值,程序将执行default标签后的语句。

1
2
3
4
5
6
7
8
9
10
11
switch(表达式){
case 值一:
值一语句
break;
case 值二:
值二语句
break;
default:
语句
break;
}

break语句

break语句负责终止离它最近的while、do while、for或switch语句,并从这些语句后的第一条语句开始继续执行。

continue语句

continue语句负责终止最近的循环中的当前迭代立即开始下一次迭代,只能用于for、while和do while中。


参考资料

C++primer中文版(第五版) 电子工业出版社。

评论