1 /* 2 Name:++i和i++的區別 3 Copyright: By.不懂網絡 4 Author: Yangbin 5 Date:2014年2月15日 02:40:27 6 Description:熟悉前自增或自減的用法 7 */ 8 # include <stdio.h> 9 int main(void) 10 { 11 int i,j,k,m; 12 i = j = 3;//等同於i=3 j=3 13 k = i++; //i++爲後自增 14 m = ++j; //++i是前自增 15 16 printf("i=%d,j=%d,k=%d,m=%d\n",i,j,k,m); 17 return 0; 18 } 19 20 /* 21 ---------------------- 22 該代碼由C-Free 5.0 編寫並輸出調試結果 23 --------輸出結果------------ 24 i=4,j=4,k=3,m=4 25 ----------------------------- 26 總結: 27 自增或自減分爲i++和++i 28 i++ ----> 後自增 29 ++i -----> 前自增 30 相同點,i++和++i最終都是使i的值加 1; 31 不一樣點,後自增是i+1以前的值,前自增是i+1以後的值
32 */
自增或自減分爲兩類:網絡
他們的相同點是不論是後自增仍是前自增,最終都是使i的值加1。spa
上述代碼中,i = j =3,i 和 j 的值都爲3,無論++j仍是i++,最終值都是使i或者j的值加1,因此輸出結果爲,i = 4;j = 4;調試
不一樣點:code
後自增i++的值是是i+1以前的值,前自增++i的值是i+1以後的值;blog
上述代碼中ip
k = i++ ,i++是後自增,k的值等於i+1以前的值,i的值是4,i+1以前的值爲3,因此k=3io
m = ++j ,++j是前自增,j的值等於j+1以後的值,因此m=4,j+1以後的值爲4class