第4章计算表达PPT讲稿.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《第4章计算表达PPT讲稿.ppt》由会员分享,可在线阅读,更多相关《第4章计算表达PPT讲稿.ppt(30页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第4章计算表达第1页,共30页,编辑于2022年,星期一2022/9/21长春理工大学2局部域n局部域是包含在函数定义(或函数块)中的程序文本区n每一个函数都有一个独立的局部域n在函数中,每个复合语句(或块)也有它自己的局部域n局部域可以被嵌套n局部域的名字解析q首先查找使用该名字的域,如果找到一个声明,则该名字被解析q如果没找到,则查找包含该域的域q这个过程会一直继续下去,直到找到一个声明或已经查找完整个全局域q如果都没有找到,即没有找到该名字的声明,则这个名字的用法将被标记为错误第2页,共30页,编辑于2022年,星期一面向对象程序设计计算表达长春理工大学董元方第3页,共30页,编辑于20
2、22年,星期一2022/9/21长春理工大学4计算表达n名词解释与操作符n算术运算问题n相容类型的转换n关系与逻辑操作n位操作n增量操作n表达式的副作用第4页,共30页,编辑于2022年,星期一2022/9/21长春理工大学5名词解释1n操作符q表示动作或动作序列的符号,动作有的是表达式计算、有的是声明和定义n实体q指一定大小的内存空间,它具有类型q与实体相关联的名字称为变量、常量、对象、函数、指针等n常量q与变量相对应,是关联于实体的名字,通过它只能对实体进行读访问n表达式q是一些操作符、操作数按规则排列的序列q目的是用来描述一个计算n赋值表达式q=、*=、/=、%=、+=、-=、=、&=、
3、|=、=double d=5/2;double e=3*d+(+d);e=3+5*6;d=e=5;第5页,共30页,编辑于2022年,星期一2022/9/21长春理工大学6名词解释2n条件表达式q用在if/for/while/条件操作符(?:)后面描述条件的部分q只要具有值的表达式都可以作条件表达式q结果只有两种:1和0n逗号表达式q若干个表达式以逗号操作符隔开q逗号表达式的求值过程是从左边第一项开始,逐项进行的,其值为最后一个子表达式的值n左值和右值q是相对赋值表达式而言的q左值是能出现在赋值表达式左边的表达式,有空间实体和读写访问权q右值是可以出现在赋值表达式右边的表达式,可以是不占据内存
4、空间的临时量和字面值,可以是不具有写入权的空间实体第6页,共30页,编辑于2022年,星期一2022/9/21长春理工大学7操作符的优先级和结合性优先级操作符结合性1:左右2.-()左右3+-!-+&*()sizeof new delete castname_cast 单目操作符单目操作符右左4.*-*左右5*/%左右6+-左右7左右8 =左右9=!=左右第7页,共30页,编辑于2022年,星期一2022/9/21长春理工大学810&左右11左右12|左右13&左右14|左右15?:右左16=*=/=%=+=-=&=|=右左17throw左右18,左右第8页,共30页,编辑于2022年,星期一
5、2022/9/21长春理工大学9算术运算问题n周而复始的整数q例:一种8位整数类型的表示范围在-128127之间,而用它定义的变量a超出了表示范围q无符号数和有符号数在计算时都是以256为模的,只不过在显示结果时,对于最高位非0的有符号数要显示一个负号,然后对该数取补n算法局限性q算法总是描述一般的方法,而编程总是考虑语言描述的局限性n中间结果溢出q例:inta=100000,b=100000,c=1000;couta*b/c;n浮点数的比较q使用浮点数进行相等和不相等比较的操作通常是有问题的。浮点数的相等比较,一般总是使用两者相减的值是否落在0的邻域中来判断的第9页,共30页,编辑于2022
6、年,星期一2022/9/21长春理工大学10相容类型的转换charshortintlong intlong doubledoubleunsigned charunsigned shortunsigned intunsigned longfloat隐隐式式转转换换第10页,共30页,编辑于2022年,星期一2022/9/21长春理工大学11类型转换需注意n精度丢失:从高精度向低精度转换的时候,可能会引起精度丢失n显式转换:为了控制计算过程,使得类型转换不按机器隐式类型转换的那样进行,则可以通过显式转换qstatic_cast:对被转换的表达式进行type类型的再求值qreinterpret_ca
7、st:什么都不做,只是强制逃避编译的类型检查而已,一般用来转换不同类型的指针。对于需要求值计算的表达式它会拒绝转换第11页,共30页,编辑于2022年,星期一2022/9/21长春理工大学12精度丢失实例#includeusingnamespacestd;voidmain()floatf=7.0/3;inta=7.0/3;cout.precision(9);coutfixed7.0/3endlfendlaendl;doubled=123456789.9*9;a=f=d;coutdendlfendlaendl;第12页,共30页,编辑于2022年,星期一2022/9/21长春理工大学13显式转换
8、实例#include#includeusing namespace std;void main()double d=sqrt(123456.0);int a=static_cast(d)*8+5;int b=d*8+5;coutdendlaendlbendl;a=2000000000;b=1000000000;int c=(static_cast(a)+b)/2;couta+bendlc大于比较q=大于等于比较q=小于等于比较q!=不等于比较关系操作的结果就是关系操作的结果就是truetrue和和falsefalse两个逻辑值两个逻辑值之一。逻辑值可以进行之一。逻辑值可以进行逻辑运算(操作)逻
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算 表达 PPT 讲稿
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内