我尝试执行以下c代码:
#include <stdio.h>
int main()
{
int i=2000,j=100;
printf("%d",(j,i));
}
我为i
和j
提供了不同的值,并找到了输出。我总是将输出作为第二个变量中包含的值。表达式总是将最后一个变量作为结果给出,还是具有任何其他含义?
答案 0 :(得分:1)
您正在使用comma operator。
代码的输出为2000
,因为逗号运算符会计算两个表达式并返回第二个操作数的值。有关详细信息,请参阅此SO answer。