#include <stdio.h>
int main()
{
3, 4, 5;//这是一条语句
//把上面这条语句的值赋值给变量a
int a = (3, 4, 5);
printf("a=%d\n", a);
}
输出结果:a=5
因为a的值是整条语句的值,而整条语句的值是最后那个逗号后面的值
例子2:
#include <stdio.h>
int main()
{
int a=3, b=4, c=5;
int x=0;
int y=(x=a+b),(b+c);
printf("第一个y=%d\n", y);
y=((x=a+b),(b+c));
printf("第二个y=%d\n", y);
}
输出结果:
第一个y=7
第一个y=9
第一个y的值你应该能看懂,就是逗号分隔开,使得y=x=a+b
第二个y其实就等于逗号后面的(b+c)的值!逗号前面那些似乎是多余的
那多余的东西为什么要写呢?请注意:逗号前面有个x的赋值语句,所以并不多余!
这样写的目的有2:
1.简化代码:两句合成一句写.
2.让你理解一个句子就会像一个函数一样有返回值,如果用逗号隔开,这个【返回值】就会变成最后那个表达式的值!
标签:语句,int,逗号,20223.1,fourteenth,printf
From: https://www.cnblogs.com/ningzj/p/17031528.html