这里如何使用逗号运算符



可能的重复项:
C++逗号运算符
C 逗号运算符的用途

我对C++并不陌生,但这是我第一次看到以下代码:

int a=0;
int b=(a=2,a+1);

这就是C++代码。你能告诉我这是怎么回事吗?变量 b 如何获得值 3?

此代码等效于以下内容:

int a = 2 ; 
int b = a + 1 ;

逗号左侧的第一个表达式被计算,然后是其右侧的表达式。最右边表达式的结果存储在符号左侧=变量中。

查找逗号运算符以获取更多详细信息。

http://en.wikipedia.org/wiki/Comma_operator

(a = 2, a + 1);返回 3,因为在一般情况下,运算符 (a, b) 返回 b,而 (a, b) 中的计算从右到左开始。因此,在您的情况下,(a = 2, a + 1)返回a + 1,并且在执行运算符 a = 2a + 1返回 3。

相关内容

  • 没有找到相关文章