C++ 逗号运算符



逗号运算符的目的是将多个表达式串联在一起。逗号分隔的表达式列表的值是右侧表达式的值。从本质上讲,逗号的作用是导致一系列操作的执行。

其他表达式的值将被丢弃。这意味着右侧的表达式将成为整个逗号分隔表达式的值。例如 -

var = (count = 19, incr = 10, count+1);

这里首先将 count 的值赋为 19,将 incr 的值赋为 10,然后将 count 加 1,最后将 var 的值赋为最右侧表达式的值,count+1,即 20。括号是必要的,因为逗号运算符的优先级低于赋值运算符。

要查看逗号运算符的效果,请尝试运行以下程序 -

#include <iostream>
using namespace std;

int main() {
   int i, j;
   
   j = 10;
   i = (j++, j+100, 999+j);

   cout << i;
   
   return 0;
}

当以上代码编译并执行时,它会产生以下结果 -

1010

以下是 i 的值如何计算的:j 从值 10 开始。然后 j 增加到 11。接下来,将 j 加到 100。最后,将 j(仍然包含 11)加到 999,得到结果 1010。

cpp_operators.htm
广告