1. 主页
  2. 文档
  3. C语言教程
  4. C语言运算符
  5. 逗号运算符的结果作为 C 和 C++ 中的左值

逗号运算符的结果作为 C 和 C++ 中的左值

将逗号运算符的结果用作左值在 C 中是无效的。但在 C++ 中,如果逗号运算符的右操作数是左值,则逗号运算符的结果可以用作左值。

例如,如果我们将以下程序编译为 C++ 程序,那么它可以工作并打印 b = 30。如果我们编译与 C 程序相同的程序,那么它会在编译时给出警告/错误(在 Dev C++ 中出现警告,在代码块)。

#include<stdio.h>

int main()
{
int a = 10, b = 20;
(a, b) = 30; // Since b is l-value, this statement is valid in C++, but not in C.
printf("b = %d", b);
getchar();
return 0;
}

C++ 输出:
b = 30

这篇文章对您有用吗?