千头万绪的句子:谁帮我解释一下C语言中的++i与i++的区别及应用

来源:百度文库 编辑:高校问答 时间:2024/05/14 16:33:30
我发现自加与自减挺有意思的,在程序的前面与后面,结果是完全不一样的。
让我看满意的追加高分

在实际编程中,为了程序的简练,经常使用 i++ 与 ++i 这样的语句,现简单对她们的区别做一说明:

i++ :先进行运算,再执行 i = i +1的操作;而 ++i 则是先执行 i = i +1的操作,再进行运算;举例说明如下:

int x=0, y=0;

y = x++;

执行后y的值仍为 0;而

int x=0, y=0;

y = ++x;

执行后y的值则为 1;

再例如:

int x=0;

if( x++ == 1) //条件为假

{

}



int x = 0;

if( ++x == 1) //条件为真

{

}

通过以上两个实例,我想大家应该可以很好的理解和使用i++和++i 了。

我说个简单的,i++和++i都是表达式,表达式是有值的,而i++和++i都是对i加1,但是表达式的值是不一样的,i++的表达式的值等于加1之前的i的值,而++i表达式的值等于加1之后的i的值

如果i=2

那么,(i++)+1等于3,而(++i)+1则等于4。

++i是先自加,然后结果再参与运算
i++是先参与运算,然后再自加
很清楚吧?
如果i=1
那么1*++i=2
而1*i++=1

main()
{
int i,j,x,y;
i=1;
j=1
x=++i;
y=j++;
printf("i=%d j=%d x=%d y=%d",i,j,x,y);
}
结果如下:
i=2,j=2,x=2,y=1

看出区别了吧:)

++i是先使i的值加1,再参与运算
i++是先参与运算,后使i的值加1

i++与++i的区别是这样的:
i++是先参与运算再自加;而++i是先自加再参与运算。
我就不举了。
我也不想拿分,只参与回答!
不过实在想给我也没办法。要就要吧!谢谢!