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