
c语言中怎样理解i++和++i,请举例具体说明?
7个回答
展开全部
就如楼上极为说的,i++是先用后加,如:int x,y=5;
x=y++;
在这里x=y++=5,而y自身经过一次自增之后变成了6
而如果是++i的话,x=++y=6,y也=6,因为是先加后用,
反正就是i++ ++i不管哪个,i都会加1,只是i++是原来的i的值,而++i是加1之后的i的值
但是如果碰到有很多个的自增自减的时候就要看编译器了,那个的看搞编译器的那个人是怎么设置的,所以如果遇到那种情况,还是尽量别用自增自减了,免得换了一个编译器就不能用了。。。
x=y++;
在这里x=y++=5,而y自身经过一次自增之后变成了6
而如果是++i的话,x=++y=6,y也=6,因为是先加后用,
反正就是i++ ++i不管哪个,i都会加1,只是i++是原来的i的值,而++i是加1之后的i的值
但是如果碰到有很多个的自增自减的时候就要看编译器了,那个的看搞编译器的那个人是怎么设置的,所以如果遇到那种情况,还是尽量别用自增自减了,免得换了一个编译器就不能用了。。。
展开全部
呵呵,i++是先用一次本身,再执行+1;而++i是直接就执行+1;例如:
int i=0;
printf("%d",i++);
/*输出结果为 0 */
int i=0;
pringf("%d",++i);
/*输出结果为 1 */
int i=0;
printf("%d",i++);
/*输出结果为 0 */
int i=0;
pringf("%d",++i);
/*输出结果为 1 */
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
int i=1;
printf("%d\n",i++);
printf("%d\n",i);
int j=1
printf("%d\n",++j);
printf("%d\n",j);
结合楼上几位给你的解释,你运行一下,上面这段代码,试试看就理解了
printf("%d\n",i++);
printf("%d\n",i);
int j=1
printf("%d\n",++j);
printf("%d\n",j);
结合楼上几位给你的解释,你运行一下,上面这段代码,试试看就理解了
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在其他方法内使用的时候++在前,先+1后赋值.++在后先赋值在+1.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
告诉你个最好记的办法 i++就是先赋值再自加
++i就是先自加再赋值
++i就是先自加再赋值
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询