逗号运算符如何在C++中工作?

例如,如果我这样做:

a = b, c;

结局等于b还是c?

(是的,我知道这很容易测试-只是在此处记录文档,以便别人快速找到答案。)

更新:这个问题在使用逗号运算符时暴露出细微差别。只是为了证明这一点:
a = b, c;    // a is set to the value of b!

a = (b, c);  // a is set to the value of c!

这个问题实际上是受代码输入错误的启发。打算是什么
a = b;
c = d;

转换成
a = b,    //  <-  Note comma typo!
c = d;

最佳答案

它等于b

逗号运算符的优先级低于赋值的优先级。

关于c++ - 逗号运算符如何工作,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54142/

10-11 16:27