自增或自减例子:i++和++i的相同点和不同点

 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++ ---->后自增
  • ++i ---->前自增

他们的相同点是不管是后自增还是前自增,最终都是使i的值加1。

上述代码中,i = j =3,i 和 j 的值都为3,不管++j还是i++,最终值都是使i或者j的值加1,所以输出结果为,i = 4;j = 4;

不同点:

后自增i++的值是是i+1之前的值,前自增++i的值是i+1之后的值;

上述代码中

k = i++ ,i++是后自增,k的值等于i+1之前的值,i的值是4,i+1之前的值为3,所以k=3

m = ++j ,++j是前自增,j的值等于j+1之后的值,所以m=4,j+1之后的值为4

posted @ 2014-02-15 02:53  不懂网络  阅读(1219)  评论(2编辑  收藏  举报