CC++语言程序设计案例教程:数据类型和表达式.pptVIP

CC++语言程序设计案例教程:数据类型和表达式.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* 例如:若a=5,b=3,c=1,则 ab 表达式的值为1,即代表其逻辑值为“真” (ab)==c 表达式的值为1,即代表其逻辑值为“真” b+ca 表达式的值为0,即代表其逻辑值为“假” d=ab 表达式的值为1,即代表其逻辑值为“真” f=abc 表达式的值为0,即代表其逻辑值为“假” * 注意: ① 由于关系运算符的结果不是0就是1,因此它们的值也可作为算术值处理。 ② 注意与数学式子的区别。 例如:int a=5, b=3, c=2;数学上abc成立,但C语言的表达式abc却不成立,其结果为0,而不是1。要写成abbc,结果才是1。 ③ 应避免对实数作相等或不等的判断。 例如:1.0/3.0*3.0==1.0的结果为0,可改写为:fabs(1.0/3.0*3.0-1.0)1e-6。 ④ 不能将关系运算符“==”与赋值运算符“=”混为一谈。 * 2.5.4 逻辑运算符和逻辑表达式 逻辑运算实际上也是比较运算,这种运算将两个操作数的逻辑值进行比较,根据两个逻辑值的运算结果得出一个逻辑值(也是真假值)。 1. 逻辑运算符及其优先次序 C语言提供了3种逻辑运算符,即逻辑非“!”、逻辑与“”和逻辑或“||”。逻辑运算符列表见表2.5。 * 2. 逻辑表达式 用逻辑运算符将表达式连接起来的式子就是逻辑表达式。逻辑表达式由逻辑运算符和关系表达式或逻辑量组成,逻辑表达式用于程序设计中的条件描述。例如,!a、a+3 b、x || y、(i3)(j=4)等都是逻辑表达式。 逻辑表达式的结果只能有真(true)和假(false)两种可能性。逻辑运算真值表可参看表2.6。 * 例如,对于a=4,b=5,有: ① ?!a表达式的值为0,即代表其逻辑值为“假”。 ② ?ab表达式的值为1,即代表其逻辑值为“真”。 ③ ?a || b表达式的值为1,即代表其逻辑值为“真”。 ④ ?!a|| b表达式的值为1,即代表其逻辑值为“真”。 ⑤ ?40||2表达式的值为1,即代表其逻辑值为“真”。 * 表2.6 逻辑运算真值表 a b ab a||b !a !b 0 0 0 0 1 1 0 非0 0 1 1 0 非0 0 0 1 0 1 非0 非0 1 1 0 0 * 当编译系统读到说明语句“short a=8;”时,则给变量a分配两个字节(即两个存储单元)的内存空间,假设它们的字节编号是0x6000和0x6001,则变量a的地址是0x6000。 同样地,说明语句“float b=6.00;”被分配到的内存地址是0x6002到0x6005(占四个字节单元);“double c;”被分配到的内存地址是0x6006到0x600D(占八个字节单元,注意地址编号用十六进制整数);“char d=x;”分配的内存地址是0x600E(占一个字节单元)。 特别注意,变量a、b、d在分配内存单元的同时也赋予了相应的初始值数据,而变量c只是定义了双精度实数类型,没有给变量赋予初值,编译系统仅为该变量分配了对应的八个字节的内存空间,等待在程序运行过程中存放数据。 * 2. 直接访问(寻址)与间接访问(寻址) 程序中欲对变量进行操作时,可以直接通过变量地址对其存储单元进行存取操作,把这种按变量地址存取变量值的方式称为“直接访问(寻址)”(也就是通过变量的名字访问变量)方式。只需要使用变量名就可以直接引用该变量在存储单元中的内容。 例如,对于图2.4中的变量定义语句: short a=8; 已知编译程序为变量a分配了地址从0x6000到0x6001的两个字节存储单元并被赋予初值8,变量名a的存储单元首地址是0x6000,那么a就代表变量的内容8。 * 如果将变量a的内存地址存放在另一个变量p中,为了访问变量a,就必须通过先访问变量p获得变量a的内存首地址0x6000后,即经过变量p“中介”,再到相应的地址中去访问变量a并得到a的值。把这种间接地得到变量a的值的方法称为“间接访问(寻址)”方式,这个专门用来存放内存地址数据的“中介变量p”就是下面要介绍的指针类型变量,简称为指针变量。 形象地讲,变量a所占的存储单元好比是抽屉A,指针变量p所占的存储单元好比是抽屉B,一种情况是直接使用钥匙从抽屉A中存取东西,是直接访问;而另外一种情况是事先把抽屉A的钥匙存放在抽屉B中,而间接访问好比先到抽屉B取得抽屉A的钥匙,然后才能打开抽屉A存取东西。 * 3. 指针和指针变量 通过对内存单元“间接访问”的概念可知,通过存储单元地址可以找到所需要的变量单元,即该地址“指向”某个变量所在的内存单元。在C语言中,将一个变量的地址称为该变量的“指针”,如上例中的变量p就是内存变量a的“指针变量”。 “指针”就是地址,变量的指针就是变量的地址,把变量首字节的编号称为变量

文档评论(0)

ning2021 + 关注
实名认证
文档贡献者

中医资格证持证人

该用户很懒,什么也没介绍

领域认证该用户于2023年05月10日上传了中医资格证

1亿VIP精品文档

相关文档