int a;
printf("%d\n",(a=3*5,a*4,a+5));
输出结果是什么,为什么 ??
int a;
printf("%d\n",(a=3*5,a*4,a+5));
输出结果是什么,为什么 ??
输出20。
printf("%d\n",(a=3*5,a*4,a+5)); 这里的%d是逗号表达式的值。
逗号表达式按顺序执行,首先a=3*5,这时a=15,
然后是a*4,注意这时a的值没有变化(必须是a = a*4才会变),
最后是a+5,这时a的值也没有变化。而这个同时是逗号表达式中的最后一个表达式。
逗号表达式的值总是等于最后一个表达式的值。因此%d=a+5。
显示的内容就是15 + 5 = 20了。
输出的为整个逗号表达式的值。。。。所以a=3*5=15,a*4=60,a+5=65,所以最后输出结果是65
20撒
逗号运算了嘛
a=3*5=15
然后a+5=20