大神,求解释啊,这个 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);

来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/16 01:30:35
大神,求解释啊,这个c=(a,a+=b,a-b);什么意思啊,为什么出现在屏幕上的答案第一行和第二行不一样啊?#include"stdio.h"voidmain(){inta,b,c;a=1,b=2,

大神,求解释啊,这个 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);
大神,求解释啊,这个 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);
}

大神,求解释啊,这个 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);
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