超紧急!!为什么同用的程序效率差这么远?(VC和Mingw32)

来源:百度知道 编辑:UC知道 时间:2024/06/30 00:38:45
我写了个利用哈夫曼树压缩文件的程序,由于读文件和写文件都是一个个字节地处理,所以效率好似比较底.

不过奇怪的是,同样的源程序,我用VC6编译构建出来的程序,压缩+解压一个2m的Bmp要用1分钟时间,而用Mingw32编译构建的程序,对于同样的文件压缩+解压只需几秒.

请问这究竟是什么原因啊?同样的源程序啊!另外有无解决办法啊?这可是我的课程设计啊......
那个VC是指VC6
另外,先感谢maximum提供的方法,不过即使用了release还是很慢(更debug基本感觉不到差别),跟mingw32的还是差很远.

vc如果用debug版本会慢一点
你用release版本试一下

晕,我知道是vc6,我又不是没用过-_-
vc 可以编译debug和release,前者是为了调试,后者会有优化

不介意的话,把code发给我看看

如果你写的程序不是unicode编码的话
用VC直接编译的程序在2000/NT以上系统上运行,会浪费一些时间花在编码转换上,因为2000/NT以上系统都是unicode编码.

确实debug模式和release模式编译出来的效率有时相差大的吓人.

先把组建工具条弄出来(在工具条空白位置右键,选组建),然后选 Win32 Release再编译就可以了

--------------
你确认使用了Release编译?如果真的不行,你就用MinGW编译吧,为了效率只有放弃VC了

如果想要效率,就不应该把主要精力放在编译器上,你把文件先读取进缓冲里,然后处理缓冲里的数据,效率自然就上去了。想想那么多程序,有多少是用的VC啊,效率可不低哦