#include <stdio.h>
int main()
{
int x=0;
printf("%d\n",x++);
printf("%d\n",++x);
return 0;
}
你好,如你写的程序就可以得到相应的结果,我猜你是说为什么吗?你先理解”x++“和”++x"的含义,区分和变量x的不同,然后知道这里面涉及到一个循环。”x++“输出值是x代表的数值, 并不是x+1的值;“++x"输出值是x+1的值,而变量都是x=x+1,这里面涉及一个加1的先后顺序。于是 printf("%d\n",x++)=0,变量x=x+1=1。
对于printf("%d\n",++x)=2?此时的变量x的值就是从上面循环下来的,上面经过”x++“的过程,变量x=x+1,就=1了,再进行“++x"的运算,printf("%d\n",++x)=1+1=2,变量x=1+1=2.
#include <stdio.h>
int main()
{
intx=0
printf("%d\n",y=(++x)*2);
return 0;
}