- 2
- 0
- 约1.57万字
- 约 5页
- 2017-08-06 发布于河南
- 举报
浅谈C与C中顺序点与副作用
浅谈C/C++中的顺序点和副作用
C/C++中有一个叫做顺序点(Sequence Point)的概念,通常我们并没有必要去了解和深究。但如果掌握了顺序点的概念,一些晦涩的表达式(比如某些无聊的面试题目)可能就会变得简单明了了。为了介绍顺序点,就不得不提到副作用(Side Effect)。
一.副作用(side effect)
表达式有两种功能:每个表达式都产生一个值( value ),同时可能包含副作用( side effect )。副作用是指改变了某些变量的值。
如:
1:20 //这个表达式的值是20;它没有副作用,因为它没有改变任何变量的值。
2:x=5 // 这个表达式的值是5;它有一个副作用,因为它改变了变量x的值。
3:x=y++ // 这个表示有两个副作用,因为改变了两个变量的值。
4:x=x++ // 这个表单时也有两个副作用,因为变量x的值发生了两次改变。
二.求值顺序点
表达式求值规则的核心在于 顺序点( sequence point ) [ C99 6.5 Expressions 条款2 ] [ C++03 5 Expressions 概述 条款4 ]。
顺序点的意思是在一系列步骤中的一个“结算”的点,语言要求这一时刻的求值和副作用全部完成,才能进入下面的部分。在C/C++中只有以下几种存在顺序点:
1)分号;
2)未重载的逗号运算符的左操作数赋值之后(即,
您可能关注的文档
- 池塘养鱼合理放养密度.doc
- 求助机械英语单词 机械零部件、机构、装置、设备设计、制造和应用专区.doc
- 汽耗和热耗计算.doc
- 汽机启动前保护和联锁实验卡.doc
- 汽车专业毕业论文——轿车制动跑偏故障和....doc
- 求导数方法.doc
- 汽车两种启动方式和训练习题.doc
- 汽车仪表盘指示灯和开关符号说明.doc
- 汽车传动系统——变速器与同步器图解(一).doc
- 汽车修理工高级理论知识试卷A和答案.doc
- 2024-2025学年湖南省邵阳市新宁县回龙寺镇人教版一年级下册期中测试数学试卷.docx
- 2024-2025学年山东省德州市平原县王杲铺中小、王凤楼中小、腰站镇中小青岛版一年级下册3月月考数学试卷.docx
- 第四单元 课题3 物质组成的表示-初中化学新教材预习学案(人教版2024九年级上册).docx
- 2024-2025学年山东省济宁市梁山县人教版一年级下册期中测试数学试卷.docx
- 2024-2025学年山东省德州市德州经济技术开发区长河小学等校青岛版一年级下册期中考试数学试卷.docx
- 2026《基于国产开源单片机GD32VF103的输变电设备物联网传感器设计》8300字.docx
- 2024年中考道德与法治真题完全解读(北京卷).docx
- 2026《基于机器视觉识别的工件边缘曲线重构方法分析》9000字.docx
- 课时9.4 物体的浮与沉【一大题型】八年级全一册物理(沪科版2024).docx
- 2024-2025学年广东省江门市开平市人教版一年级下册期中综合素养评价数学试卷.docx
最近下载
- 豪顿华烟气换热器GGHinstallation.pdf VIP
- 湖北中考完形填空提高篇.doc VIP
- 2026年入党试题与完整答案.docx VIP
- 2026最新入党试题与完整答案.docx VIP
- JJF(陕) 111-2024 超声流量计在线校准规范.pdf VIP
- 2025年新疆中考道德与法治+历史试卷真题(含标准答案及解析).docx
- 江苏省2025年中职职教高考文化统考汽车专业综合理论试卷.docx VIP
- 《建筑构造》2基础与地下室省公开课一等奖全国示范课微课金奖课件.pptx
- 《交通规划原理》课后题答案汇编.docx VIP
- 2025年度电化学储能电站行业统计数据.pdf VIP
原创力文档

文档评论(0)