示例說明:
#include<stdio.h>
void main()
{
int a,b,c,d;
a=1;b=2;c=3;
d=(a++,b=b+a,c=c+b);
printf("%d,%d,%d,%d\n",a,b,c,d);
}
/*
輸出結果是
2,4,7,7
Press any key to continue
*/
(a++,b=b+a,c=c+b)括號裡面的叫逗號表示式。
在(a++,b=b+a,c=c+b)中,
先計算a++;既a=a+1;a變成了2;
再計算b=b+a,b變成了4
再計算c=c+b,c變成了7.。
最後講括號裡面的最後一個值返回給d;
既d=c=7;
這個函式的作用差不多,是有返回值的。。
其實c=(a,b);也就是b作為最後計算的結果返回給c。
示例說明:
#include<stdio.h>
void main()
{
int a,b,c,d;
a=1;b=2;c=3;
d=(a++,b=b+a,c=c+b);
printf("%d,%d,%d,%d\n",a,b,c,d);
}
/*
輸出結果是
2,4,7,7
Press any key to continue
*/
(a++,b=b+a,c=c+b)括號裡面的叫逗號表示式。
在(a++,b=b+a,c=c+b)中,
先計算a++;既a=a+1;a變成了2;
再計算b=b+a,b變成了4
再計算c=c+b,c變成了7.。
最後講括號裡面的最後一個值返回給d;
既d=c=7;
這個函式的作用差不多,是有返回值的。。
其實c=(a,b);也就是b作為最後計算的結果返回給c。