C++面向对象第二章:表达式运算后a的值详解
需积分: 10 179 浏览量
更新于2024-07-14
收藏 285KB PPT 举报
在C++面向对象编程的第二章中,主要讨论了数据类型、运算符和表达式的概念。本章的重点在于理解C++中的基本数据类型,如整型、字符型、浮点型和布尔型,这些数据类型决定了变量所占的存储空间、数值范围和精度。学习者需要掌握如何使用和操作这些数据类型,包括基本运算符(如算术运算符、赋值运算符、关系运算符等)和复合表达式。
1. 表达式运算举例:
- (1) `a += a`:将a的当前值与a的值相加,然后将结果赋给a,如果初始值a=12,最终a=12+12=24。
- (2) `a -= 2`:a减去2,12-2=10。
- (3) `a *= 2+3`:a乘以2+3的结果,12*(2+3)=12*5=60。
- (4) `a /= a + a`:a除以a加上a的结果,12/(12+12)=12/24=0.5。
- (5) `a %= (5%2)`:取余运算,5除以2的余数(1)再赋给a,12%1=0。
- (6) `a += a -= a *= a`:这个表达式顺序执行,先a=a*(a-=a),即a=12*(12-12)=12*0=0,然后再a+=0,所以a不变。
- (7) `a = 5 + (c = 6)`:c被赋值为6,然后a被赋值为5+6=11。
- (8) `a = (b = 4) + (c = 6)`:同样,b和c分别被赋值,a最终为4+6=10。
- (9) `a = (b = 10) / (c = 2)`:b被赋值10,c被赋值2,a被赋值10/2=5。
- (10) `(a = 3.5) = 4 * 3`:这是一个错误的赋值表达式,因为不能直接赋值给一个已经赋值的表达式。
- (11) `a = b = (c = a + 6)`:c先被赋值为a(假设a=12)的值加6,然后b和a都被赋值为这个新的c值。
2. 左值表达式与运算符优先级:
- `5%=2;`:这里5%2的结果赋值给5,5可能被更新为1。
- `5 = a;`:这个语句尝试将a的值赋给5,但如果没有明确的变量a的声明或初始化,会出错,因为C++需要先定义变量才能赋值。
3. 类型转换:
C++允许不同类型之间的转换,但需要注意数据精度损失和溢出问题。例如,将浮点数赋给整数类型时,小数部分会被截断。
总结来说,本章的学习旨在帮助读者理解和掌握C++的基础语法,包括数据类型的使用、运算符的优先级和作用,以及如何通过表达式来处理和操作变量。这对于编写有效的C++程序至关重要。
2008-11-26 上传
2014-06-20 上传
2008-08-29 上传
327 浏览量
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
雪蔻
- 粉丝: 27
- 资源: 2万+
最新资源
- 黑板风格计算机毕业答辩PPT模板下载
- CodeSandbox实现ListView快速创建指南
- Node.js脚本实现WXR文件到Postgres数据库帖子导入
- 清新简约创意三角毕业论文答辩PPT模板
- DISCORD-JS-CRUD:提升 Discord 机器人开发体验
- Node.js v4.3.2版本Linux ARM64平台运行时环境发布
- SQLight:C++11编写的轻量级MySQL客户端
- 计算机专业毕业论文答辩PPT模板
- Wireshark网络抓包工具的使用与数据包解析
- Wild Match Map: JavaScript中实现通配符映射与事件绑定
- 毕业答辩利器:蝶恋花毕业设计PPT模板
- Node.js深度解析:高性能Web服务器与实时应用构建
- 掌握深度图技术:游戏开发中的绚丽应用案例
- Dart语言的HTTP扩展包功能详解
- MoonMaker: 投资组合加固神器,助力$GME投资者登月
- 计算机毕业设计答辩PPT模板下载