| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 449 人关注过本帖
标题:* and ++
只看楼主 加入收藏
zfzdhz
Rank: 1
等 级:新手上路
帖 子:55
专家分:0
注 册:2008-8-21
收藏
 问题点数:0 回复次数:6 
* and ++
main()
{
  int a[10]={0,1,2};
  int *p=a;
  printf("%d",*(p++));
}
tc运行结果怎么是0啊???
2008-09-11 20:46
zfzdhz
Rank: 1
等 级:新手上路
帖 子:55
专家分:0
注 册:2008-8-21
收藏
得分:0 
*p++==*p(++)???
2008-09-11 20:47
blueboy82006
Rank: 5Rank: 5
来 自:幻想世界
等 级:贵宾
威 望:16
帖 子:1227
专家分:57
注 册:2007-7-23
收藏
得分:0 

确实如此,运算优先级所决定...

2008-09-11 21:05
xianshizhe111
Rank: 1
等 级:新手上路
帖 子:1451
专家分:0
注 册:2007-12-8
收藏
得分:0 
0是正确的先取值后++,把++放在前边就是1了。
2008-09-11 23:40
随心
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:12
帖 子:2577
专家分:250
注 册:2007-8-12
收藏
得分:0 
LS好久不见了

天之道,利而不害。圣人之道,为而不争。信言不美,美言不信。善者不辩,辩者不善。知者不博,博者不知。
2008-09-11 23:50
xianshizhe111
Rank: 1
等 级:新手上路
帖 子:1451
专家分:0
注 册:2007-12-8
收藏
得分:0 
好久不见了,你好啊
2008-09-11 23:51
xyzx
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2008-9-12
收藏
得分:0 
本题因为++在p后面,故先取*P,后指针P加1,若再在下一行加一句   printf(“%d\n”,*p);运行的值则是1,哦,*p++==*(p++),(由于++与*同级优先,结合方向自右向左)
main()
{
 int a[10]={0,1,2};
 int *p=a;
 p++;
 printf("%d",*p);
}
运行结果则是1
2008-09-12 00:51
快速回复:* and ++
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.033959 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved