一、关键点

  • 逗号运算符含有两个运算对象,从左至右依次求值。
  • 逗号运算符的求值结果是逗号右侧表达式的值
  • 逗号运算符的优先级低于赋值运算符。

 

二、示例



  int i;
int x = (i=3,i++,++i,i+5); //表达式 i=3,i++,++i,i+5 的值为10
cout << "i = " << i << "\nx = " << x << endl;  //i = 5 , x = 10


解释一下第二句:

  1. i = 3
  2. i++→i = 4
  3. ++i→i = 5
  4. i + 5→i的值不变(为5),但是表达式i+5的值为10
  5. 整个表达式的值为逗号右边的那个表达式的值,即为10