作业帮 > 综合 > 作业

大神,求解释啊,这个 c=(a,a+=b,a-b);什么意思啊,为什么出现在屏幕上的答案第一行和第二行不一样啊?

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/13 23:36:25
大神,求解释啊,这个 c=(a,a+=b,a-b);什么意思啊,为什么出现在屏幕上的答案第一行和第二行不一样啊?
#include "stdio.h"
void main( )
{
int a,b,c;
a=1,b=2,c=a+b+3;
printf("%d,%d,%d\n",a,b,c);
c=(a,a+=b,a-b);
printf("%d,%d,%d\n",a,b,c);
}
a+=b-->a=a+b,则a=3,a-b=3-2=1.
c=(a,a+=b,a-b),c取值为逗号表达式的最后一个,即a-b=1.
第二个输出为:3,2,1