求分析一个C语言程序~ 谢谢!
#include<stdio.h>voidmain(){inti=1;printf("%d,%d,%d",i,i++,i++);}...
#include <stdio.h>
void main ()
{
int i=1;
printf("%d, %d, %d",i,i++,i++);
} 展开
void main ()
{
int i=1;
printf("%d, %d, %d",i,i++,i++);
} 展开
展开全部
i++是先表示为i再加1 而++i是先表示为先加1再用
函数的参数是从右往左逐个入栈。在你这里,也就是先执行i++,再到i++,再到i,这样的顺序,明白为什么了吧 所以就是1 1 1咯
函数的参数是从右往左逐个入栈。在你这里,也就是先执行i++,再到i++,再到i,这样的顺序,明白为什么了吧 所以就是1 1 1咯
追问
那么能不能解释一下i++执行过一次以后i没有加1呢?
追答
i++这个要执行到遇到;的时候才会加1 并不是执行就加1的 printf("%d, %d, %d",i,i++,i++);这是一个语句 没执行完就不加1啊 所以一直还是1
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询