首页 > 其他 > 详细

*p++,*++p,*(p++),*(++p)

时间:2015-04-16 17:04:27      阅读:186      评论:0      收藏:0      [点我收藏+]

直接上代码:

 1 #include <stdio.h>
 2 #include <stdlib.h>
 3 
 4 int main ()
 5 {
 6   int arry[] = {0,1,2,3};
 7   int val = 888;
 8   int *p, *tmp;
 9 
10   p = &arry[0];
11   val = *p;
12   printf("p->0x%x, val=%d\n", p, val);
13 
14   tmp = p;
15   val = *p++;
16   printf("*p++:   p->0x%x, val=%d\n", p, val);
17   p = tmp;
18 
19   tmp = p;
20   val = *++p;
21   printf("*++p:   p->0x%x, val=%d\n", p, val);
22   p = tmp;
23 
24   tmp = p;
25   val = *(p++);
26   printf("*\(p++\): p->0x%x, val=%d\n", p, val);
27   p = tmp;
28 
29   tmp = p;
30   val = *(++p);
31   printf("*\(++p\): p->0x%x, val=%d\n", p, val);
32   p = tmp;
33 
34   return 0;
35 }

输出:

p->0xbf975cd4, val=0
*p++:   p->0xbf975cd8, val=0
*++p:   p->0xbf975cd8, val=1
*(p++): p->0xbf975cd8, val=0
*(++p): p->0xbf975cd8, val=1

结论: 括号很重要

*p++,*++p,*(p++),*(++p)

原文:http://www.cnblogs.com/marvin-notes/p/4432309.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!