| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 504 人关注过本帖
标题:[求助]请帮忙解释一个问题
取消只看楼主 加入收藏
二C在线
Rank: 1
来 自:山东济南
等 级:新手上路
帖 子:8
专家分:9
注 册:2009-5-19
结帖率:0
收藏
已结贴  问题点数:10 回复次数:3 
[求助]请帮忙解释一个问题
main()
{ int a=1,b;
b=a++*a++;
  printf("%d\n",b);
  getch();
}
这样输出是1。
 main()
{ int a=1,b;
  printf("%d\n",b=a++*a++);
  getch();
}
这样输出却是:2。
请教这两个有什么区别呢,为什么会出现不一样的结果?

搜索更多相关主题的帖子: 解释 
2009-09-07 10:01
二C在线
Rank: 1
来 自:山东济南
等 级:新手上路
帖 子:8
专家分:9
注 册:2009-5-19
收藏
得分:0 
是啊,我也知道这和编译器有关,我是想同一个编译器应该给出的答案是一样的啊。可为什么在同一个编译下会得两个不同的答案呢?难道这和Printf()本身的解释顺序有关?

请问楼上,您用的是什么编译器啊,是VC6.0吗?
2009-09-07 10:12
二C在线
Rank: 1
来 自:山东济南
等 级:新手上路
帖 子:8
专家分:9
注 册:2009-5-19
收藏
得分:0 
哦,没用过,是和TC类似吗,这段程序在WinTC下也是一个1,一个2。我用的VC6.0。
按说都是自右向左算,且都是先用后加,应该得出的结果一致才是啊。真奇怪啊
2009-09-07 10:34
二C在线
Rank: 1
来 自:山东济南
等 级:新手上路
帖 子:8
专家分:9
注 册:2009-5-19
收藏
得分:0 
还有人帮忙看下吗 谢谢!
2009-09-07 15:49
快速回复:[求助]请帮忙解释一个问题
数据加载中...
 
   



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

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