第3章表达式和语句要点.ppt
文本预览下载声明
第3章 表达式和语句 本章主要内容 3.1 表达式 3.2 算术运算和赋值 3.3 算术类型转换 3.4 增量和减量 3.5 关系与逻辑运算 3.6 if 语句 3.7 条件运算符 3.8 逗号运算符 3.9 求值次序与副作用 作业 理解表达式和语句的概念 能够使用表达式来描述语句和操作 掌握运算符的功能与特点 理解运算符的优先级和结合性 能够使用if和if/else语句来选择动作 3.1 表达式 表达式:一个序列,含操作符、操作数,和标点符号,完成一个计算。 可以嵌套 2+3+(6*sizeof(int))/235 操作符和操作数必须匹配,但对编译器有额外约定 例如:float a=3.2; int b = a+12; //float与int做+操作 表达式中操作数需约定求值次序ch3.9 操作符有优先级,级别高者先操作 例如:2+3*6 中*优先级高于+ 操作符有结合性,决定同优先级的操作次序 例如:b=5; a=b=3; //先做b=3,再做a=b 3.1 表达式 2.左值和右值 左值是能出现在赋值表达式左边的表达式。左值表达式具有存放数据的空间,并且存放是允许的。 例如: int a=3; 右值只能出现在赋值表达式的右边。左值表达式也可以作为右值表达式。 例如:int a, b=6; const int c=5; a=b; //b是变量,所以是左值,此处作为右值 a=8; //8是常量,只能作右值,不能作为左值 c=a; //c是常量,只能作右值 3.优先级和结合性 操作符有单目,双目,三目之分 第2级都是单目运算符(优先级同级) 第14级是三目运算符(只有一个) 第15级是赋值运算符 注意:单目运算,三目运算,赋值运算为右结合,其余都是左结合 详见P35,表3-1 C++操作符的优先级与结合性。 C++操作符的优先级与结合性 优先级 操作符 结合性 1 ( ) [ ] - :: . 左→右 2 ! ~ + - ++ -- * (强制类型转换) sizeof new delete 右→左 3 . * - * 左→右 4 * / % 左→右 5 + - 左→右 6 左→右 7 = = 左→右 8 == != 左→右 9 左→
显示全部