c语言的 n++和++n的区别是什么?

如题所述

n++ 是先返回在+1,
而++n 是先+1再返回
例:(n++)
int n = 3;
int a = 2 + (n++);
n是先返回在+1所以这个时候,
a = 2 + 3 = 5;
n = 3 + 1 = 4;
例:(++n)
int n = 3;
int a = 2 + (++n);
这个时候 n 是先+1 再返回的;
n = 3 + 1 = 4;
a = 2 + (3 + 1) = 6;
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-10-15
独立成一个语句,它们没有任何区别
但如果与其它语句配合,就有区别了,比如:
k=n++;
意思是k=n;n=n+1;
而k=++n;
意思是n=n+1;k=n;
第2个回答  2013-10-15
一个是先使用n 再使n+1;
一个是先使n+1 再使用n;
第3个回答  2013-10-15
a=n++;就是a=n; n++;
a=++n;就是n++; a=n;
第4个回答  2013-10-15
n++表示自增符后置,++n表示自增符前置。
n++:在本语句中n的值不变,当本语句执行完后,n的值自增1;
++n:在本语句执行之前先执行n值的自增1.
举例:
int n=5;
如果遇到下面的语句:
b=1+n++;
则执行这条语句后,b=1+5=6,n=5+1=6
如果遇到下面的语句:
b=1+(++n)
则执行这条语句后,n=5+1=6,b=1+6=7本回答被网友采纳
相似回答