求助!!!
#include "stdio,h"fun(intx, int, y) { return (x+y); }
main( )
{
a=2,b= 2,c=3,sum;
sum= fun(fun((++a; ++b),a+b),a++);
printf(" %d\n",sum);
}
这题结果怎么出来的 结果是10? 把a++变成a或许你就理解了
a++是先使用a的值,再++ sum=fun(fun((++a,++b),a+b),a++)
从右向左计算
sum=fun(fun((++a,++b),a+b),2),此时a为3
sum=fun(fun((++a,++b),5),2)
sum=fun(fun((4,3),5),2)
sum=fun(fun(3,5),2)
sum=fun(8,2)
sum=10
页:
[1]