前自加和后自加的区别在于后自加是否单独一条语句,不是单独的语句。如果作为函数的参数,会先传递当前值在执行+1操作
#include <stdio.h>
int main (void)
{
{
int i=0;
++i; //当前自加和后自加是单独的一条语句的时候,没有区别,
i++;
printf("i变量的值是:%d\n",i);
printf("i变量后加加值是:%d\n",i++); //先把i的值传递给函数的第二个参数,然后再执行+1操作
printf("i变量前加加值是:%d\n\n",++i);
}
int i=0;
printf("函数参数(i++)+(i++)+(i++)的值是:%d\n",(i++)+(i++)+(i++)); //这条语句的执行结果和顺序和上面一样,先把i的值给函数第二个参数,在执行自加操作
i=0;
printf("%d\n",(++i)+(++i));
i=0;
printf("%d\n",(++i)+(++i)+(++i));
return 0;
}
/*
2015年3月3日14:41:20
程序执行结果如下:
i变量的值是:2
i变量后加加值是:2
i变量前加加值是:4
函数参数(i++)+(i++)+(i++)的值是:0
4
9
请按任意键继续. . .
*/