C++学习笔记_第二章_第五节
逗号运算符和逗号表达式
C++提供一种特殊的运算符—逗号运算符,又称为“顺序求值运算符”。用它将两个表达式连接起来。如
3 + 5,6 + 8
是一个逗号表达式。逗号表达式的一般形式为
表达式1,表达式2
逗号表达式的求解过程是:先求解表达式1,再求解表达式2。整个逗号表达式的值是表达式2的值。例如,上面的逗号表达式“3+5,6+8”的值为14。又如,逗号表达式
a = 3 * 5,a * 4
对此表达式的求解,读者可能会有两种不同的理解:一种理解认为3 * 5,a * 4
是一个逗号表达式,先求出此逗号表达式的值,如果a的原值为3,则逗号表达式的值为12,将12赋给a,因此最后a的值为12。另一种理解认为:a = 3 * 5
是一个赋值表达式,a * 4
是另一个表达式,二者用逗号相连,构成一个逗号表达式。这两种理解哪一种对呢?实际上:赋值运算符的优先级别高于逗号运算符,因此应先求解a = 3 * 5
(也就是把a = 3 * 5
作为一个表达式)。经计算和赋值后得到a的值为15,然后求解a*4
,得60。整个逗号表达式的值为60。
逗号表达式的一般形式可以扩展为
表达式1,表达式2,表达式3,···,表达式n
它的值为表达式n的值。
其实,逗号表达式无非是把若干个表达式“串联”起来。在许多情况下,使用逗号表达式的目的只是想分别得到各个表达式的值,而并非一定需要得到和使用整个逗号表达式的值,逗号表达式最常用于循环语句(for语句)中。
结束语
以上,是笔者整理的自我认为本章内重要的内容,内容多数来自《C++程序设计(第三版)》中的第二章内容,至此,第二章已全部完结,希望可以帮助到正在阅读本片文章的你,最后,感谢你的阅读,祝你生活愉快,学习顺利
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 xiaoyiovo's blog!