<分区>
Possible Duplicate:
Undefined Behavior and Sequence Points
请解释以下语句的行为
int b=3;
cout<<b++*++b<<endl;
如何计算?
<分区>
Possible Duplicate:
Undefined Behavior and Sequence Points
请解释以下语句的行为
int b=3;
cout<<b++*++b<<endl;
如何计算?
最佳答案
这里的行为是未定义的。参见 this question
相关标准报价:
§5/4.1 在前一个和下一个序列点之间,标量对象的存储值最多应通过表达式的计算修改一次。
最常见的序列点是语句的结尾。
标准中还值得注意:
§5.2.2/8 未指定参数的计算顺序。
关于c++ - 单个语句中的多个增量运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6915963/