sidfate 发表于 2014-2-13 15:57:11

关于逗号运算符的坑爹问题

直接上代码:
#include <stdio.h>
void main()
{
int a=2,b=4,c=6,x,y;
y=(x=a+b),(b+c);
printf("%d   %d\n",x,y);
}


编译结果是6      6    不应该是6   10吗???!!!

machimilk 发表于 2014-2-14 02:36:18

不同的编译器结果是不同的,这个没必要纠结,没实际意义

Jun_09th 发表于 2014-2-14 16:36:58

= 的级别大于, 试试这样y=((x=a+b),(b+c));

清明 发表于 2014-2-15 00:27:11

Jun_09th 发表于 2014-2-14 16:36 static/image/common/back.gif
= 的级别大于, 试试这样y=((x=a+b),(b+c));

确实啊,呵呵,顺便解决了我的疑问
页: [1]
查看完整版本: 关于逗号运算符的坑爹问题