大神,求解释啊,这个 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/14 11:05:30
xJP_SKwE9ۊ5Z7QbT(at4UqfQ]4co,{7NݢRom~D
1,hy5I-[y{he5iw@GuӅ۫zác~N~Zg{n0ѽ
MW$ G9MED#(ZBHӋJ! (X)Fw#¦
(Hr>%Bsy%v
Em5F{֊RJ_
E1K6`b
'(Ժ.+jbnפMFx %.9kuҐ(D}
大神,求解释啊,这个 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