关于Debug和Release程序运行不一致的问题

最近两天遇到一个问题,当我把一个已经完结的程序由Debug转到Release编译后,Release版本的程序运行不正常,跟Debug版本表现不一致。开始我以为是库的原因,对比了之后发现库是一样的;后来怀疑是代码有问题,因为我上网查阅,Debug与Release版本的程序确实有一个地方不同:“Debug模式下变量未赋初值时,编译器会自动给它赋一个绝对值很大的负数;而Release模式下它只会分配空间,至于里面的值,内存中原来是什么,它就是什么。”(网上查得,未经过验证。)但是对关键地方进行了排查,应该不是这个原因导致的。最后,终于在一个帖子中找到了答案:Release模式下属性->C/C++->代码生成->运行时库中应该选择多线程(/MT),而不是多线程调试。修改之后果然问题得到了解决。帖子地址为:http://blog.csdn.net/ldpxxx/article/details/9717325,在此表示感谢。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值