数据类型与数值表达.ppt_第1页
数据类型与数值表达.ppt_第2页
数据类型与数值表达.ppt_第3页
数据类型与数值表达.ppt_第4页
数据类型与数值表达.ppt_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

中央电大课程C+语言程序设计第二章C+的基本数据类型与数值表达式(第三讲),主要内容,逻辑型数据自定义类型修饰符表达式的副作用,逻辑型数据基本情况,变量定义举例:boolisOK,ready=true;,三种最简单的逻辑表达式,逻辑常量包括true(表示逻辑真)和false(表示逻辑假)逻辑变量如isOK、ready等。逻辑函数调用如通过isUpper(A)调用:boolisUpper(charc)returnc=A,关系操作符和关系表达式.,关系操作符包括=(等于)!=(不等于)(大于)=(大于等于)3、x+y3举例:typedefintDistance;去掉typedef剩下的部分应与定义变量的格式相同;意义:提高可读性、一致性和可维护性,表达式的副作用概念与原理.,表达式的副作用是指:某些表达式在求值过程中要改变该表达式中作为操作数的某个变量的值。产生副作用的原因是表达式中包含了具有副作用的操作符,这样操作符包括:赋值操作符、复合赋值操作符、增1减1操作符。,表达式的副作用概念与原理.,具有副作用的操作符必须作用于变量,因此也可称为作用于变量的操作符;错误表达式举例:+5、8=x+3由作用于变量的操作符(后增1后减1除外)构成的表达式的值就是该操作符所作用的变量所获得的值;,表达式的副作用概念与原理.,例如执行intx=3,y=5;cout(x*=y+2);/显示表达式的值coutx;/显示变量的值屏幕显示:2121而执行intx=3;coutx+;/显示表达式的值coutx;/显示变量的值屏幕显示:34,表达式的副作用概念与原理,由于此种表达式的值与变量所获得的值相同,C+即利用该变量来提供表达式的值。因此,此种表达式的值视同变量。例如,执行:intk=3;cout+(k+=2);coutk;显示:66,表达式的副作用概念与原理,借助于这种“用获得值的变量来提供表达式的值”的机理以及操作符的优先级和结合性,可以判断某些表达式的正误:正确错误+kk-(+k)+k+k-=3k-+=5k+5k-+5,表达式副作用的合理利用.,利用表达式的副作用,可使程序代码简洁、高效。例如,要将一字符串从字符数组a的下标i处复制下标j处:,i,j,表达式副作用的合理利用.,不利用副作用:while(ai)aj=ai;i=i+1;j=j+1;aj=0;,合理利用副作用:while(ai)aj+=ai+;aj=0;,表达式副作用的合理利用.,具有副作用的表达式应该含义明确,不要过于复杂费解,否则可能得到无法预料的结果,例如:执行intj=5;+j+=j+1;coutj;输出的可能是12而不是13执行intj=5;cout+j,j;输出的可能是6,5而不是6,6,表达式副作用的合理利用,基本原则:被改变值的变量不要在同一表达式中出现第二次。,表达式的副作用逗号表达式.,逗号表达式的使用格式表达式1,表达式2表达式的值就是表达式2的值,例如,执行:intx=3;cout(x+,x+5);coutx;显示:94,表达式的副作用逗号表达式.,由于表达式1或表达式2本身也可以是逗号表达式,因此可构成更长的表达式:表达式1,表达式2,表达式3例如:x=0,y=1,+z,x+y+z,表达式的副作用逗号表达式.,由于表达式的值就是最后一个子表达式的值,因此其他子表达式的作用只能通过副作用体现。例如在x+y,x-y中,第一个子表达式x+y无意义。,表达式的副作用逗号表达式,逗号操作符具有最低的优先级,因此要注意括弧的使用,注意x=y,z和x=(y,z)的区别逗号表达式常用于for循环语句中。,表达式的副作用表达式语句,格

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论