#include<stdio.h>
int main(void)
{
int a = 10, b = 20, c = 30;
printf("\n %d..%d..%d \n", a+b+c, (b = b*2), (c = c*2));
return 0;
}
上面的輸出是:110..40..60
分析:
因爲函數壓棧的原因,函數在參數壓棧的時候,是從右至左的,所以會先計算c=c*2,接着b=b*2,然後a+b+c。
#include<stdio.h>
int main(void)
{
int a = 10, b = 20, c = 30;
printf("\n %d..%d..%d \n", a+b+c, (b = b*2), (c = c*2));
return 0;
}
上面的輸出是:110..40..60
分析:
因爲函數壓棧的原因,函數在參數壓棧的時候,是從右至左的,所以會先計算c=c*2,接着b=b*2,然後a+b+c。