亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

在代碼運行中,前++和后++的區別。

#include <stdio.h>

int main()

{

? ? int x = 1,y=10;

? ? x=x*y;

? ? x++;

? ? printf("x=%d\n",x);

? ??

? ? return 0;

}

代碼中將x++;換成++x;為什么結果是一樣呢?請幫忙解答!

正在回答

2 回答

因為這個就是單純的自增啊,所以x++和++x沒什么區別。如果x++參與運算了那就不一樣了,例如,a=2,x=3,表達式a*x++的值為2*3=6,表達式算完以后x要自增1,所以x的值就是4了。

而a*++x的值就為2*4=8了,這是因為x先自增了,再參與運算。

總結一點就是,++前置,先自增再參與運算;++后置,先參與運算,自身再自增。

1 回復 有任何疑惑可以回復我~

++在前是先自加1,再取值。++在后是先取當前值再自加1。但是無論++前置還是后置兩者最后都會自加1,即都會執行x=x+1,所以該程序最后輸出的a都是一樣的,如果改為printf("%d\n",x++)和printf("%d\n",++x)則兩者結果不一樣。

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

在代碼運行中,前++和后++的區別。

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號