逗号运算符大致分为两种情况:
第一类是:保证了逗号分隔表达式从左向右进行。
EG:
#include <stdio.h>
int main()
{
int i,j;
printf("i j\n");
for (i=1,j=1;j<10;i++,j=j+i)
{
printf("%d %d\n",i,j);
}
return 0;
}
运行结果为:
在逗号左边i增加的值,赋予逗号右边j,影响j的输出。
第二类是:逗号左侧的表达式的值是右侧项的值
EG:
#include <stdio.h>
int main()
{
int x,y,z,k;
x=(y=3,(z=++y+2)+5);
k=(y=3,(z=y++ +2)+5);
printf("%d %d\n",x,k);
return 0;
}
运行结果为: