查看: 588|回复: 13

[问题求解] 请教一个简单的问题

[复制链接]
发表于 2013-2-17 00:21:16 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转黑反社区。

您需要 登录 才可以下载或查看,没有帐号?加入黑客反病毒

x
#include <stdio.h>

int main(void)
{
        int in = 8;

        printf("%d,%d,%d,%d\n",(++in),(--in),(in++),(in--));

        return 0;
}
在论坛开到的一个c语言问题。个人感觉,以上代码输出的结果应该是:9,7,8,8.可是编译器编译后的结果却是;8,7,8,8.请老师指导。
1.JPG
发表于 2013-2-18 19:46:39 | 显示全部楼层
论坛有讨论 看看吧
发表于 2013-2-21 16:12:15 | 显示全部楼层
我感觉是++/--在前/后,就先自增/减,不知对不对
 楼主| 发表于 2013-2-24 22:30:26 | 显示全部楼层
发表于 2013-3-2 19:32:56 | 显示全部楼层
跟编译器有关
发表于 2013-3-2 19:37:10 | 显示全部楼层
各种编译器 各种答案,改天有时间帮你解释下
发表于 2013-3-3 22:58:11 | 显示全部楼层
这种代码取决于具体的编译器,VC6.0的处理结果如下
1.jpg
 楼主| 发表于 2013-3-4 13:25:22 | 显示全部楼层
l_xr 发表于 2013-3-3 22:58
这种代码取决于具体的编译器,VC6.0的处理结果如下

学习了。谢谢。这学期才开始学汇编。大神多多关照啊!
 楼主| 发表于 2013-3-4 13:26:09 | 显示全部楼层
无花果 发表于 2013-3-2 19:37
各种编译器 各种答案,改天有时间帮你解释下

嗯嗯。我只试过vc++6.0
发表于 2013-3-4 17:17:46 | 显示全部楼层
l_xr 发表于 2013-3-3 22:58
这种代码取决于具体的编译器,VC6.0的处理结果如下

老师 可以把具体步骤写出来 论坛需要你的贡献 老师 ,再次像你学习
发表于 2013-3-4 17:18:53 | 显示全部楼层
无花果 发表于 2013-3-2 19:37
各种编译器 各种答案,改天有时间帮你解释下

无花果老师可以发个贴 把此次问题详解一下
发表于 2013-3-4 18:55:45 | 显示全部楼层
caojun 发表于 2013-3-4 17:18
无花果老师可以发个贴 把此次问题详解一下

在c++专区发了感觉自己表达不清楚,不知你们能不能看得懂。
发表于 2013-3-4 19:28:04 | 显示全部楼层
无花果 发表于 2013-3-4 18:55
在c++专区发了感觉自己表达不清楚,不知你们能不能看得懂。

好的 我去看看
发表于 2013-3-8 13:11:59 | 显示全部楼层
blackmatch 发表于 2013-3-4 13:25
学习了。谢谢。这学期才开始学汇编。大神多多关照啊!

我不是大神,一起加油了
关闭

站长推荐上一条 /1 下一条

Archiver|手机版|小黑屋|黑客反病毒组织 ( 京ICP备12031837号-2 )  

GMT+8, 2017-9-21 18:19 , Processed in 1.609993 second(s), 31 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表