首页 > 代码库 > 各种 C++编译器的性能对比

各种 C++编译器的性能对比

C++中的C/C++编译器现在分为许多种,的优缺点,但是现在界面上最热的C/C++编译器都有什么?以及linux,windows,dos下的什么C/C++编译器最流行?好了看完本文您就会知道了。
我主要从事windows下的编程,所以我一般用vc编译,毕竟是当今软件霸主的产品,性能和功能自然不必问了。就是编译速度有点慢。所以我在写小程序的时候有lccC/C++编译器。性能也不错,而且编译速度极快。
还有就是我觉得vc对于初学者来说可能不是好的C/C++编译器,因为mfc把所有的程序执行机制都封装在它的类里面。初学者看到其代码可能不明所以然。但是lcc不错,很适合初学者。它是标准的sdkC/C++编译器。程序的运行机制和消息处理机制写的非常清楚。
我主要用这两种C/C++编译器,其他的很少用,所以不敢评价。请大家评论。
1. GCC家族有  
2. Cygwin  
3. Mingw32  
4. DJGPP  
5. Dev-C++(Mingw32)  
6. 还有正宗的GNU GCC 2.95.5~3.0.0.4版本  
7. MS家族有  
8. MSC 5.0、6.0、7.0  
9. MSQC 1.0、2.5  
10. MSVC 1.0、4.2、6.0、7.0  
11. Borland家族有  
12. TC 1.0、2.0  
13. TC++ 1.01、3.0  
14. BC 3.0、3.1、4.0、4.5、5.0、5.02  
15. BCB 3.0、5.0、6.0  
16. 其它有  
17. Intel C/C++ 5.0  
18. Watcom C/C++ 11.0、11.0c  
19. VectorC 1.3.3  
20. IBM VisualAge for C++  
21. DigitalMars C/C++  
22. KAI C/C++ 4.03f for RedHat 7.2  
23. Lcc4.1  
24. LCC-WIN32 2001-09-25~2002-04-28日版  
25. Small C  
26. CC386  
27. Pacific C  
28. 另外还有C的解释器  
29. Quincy  
30. Eic  
31. CINT 
上面提到的C/C++编译器/解释器,大部分我都使用过。现在固定使用VC7.0 Cygwin Mingw32 VectorC和LCC-WIN32这五种C/C++编译器。 在GCC 家族中GNU GCC是根本,其它的C/C++编译器版本都是从它导出的。其中,Cygwin和Mingw32都是WIN32平台下的C/C++编译器,DJGPP是DOS下的32位C/C++编译器。大家所熟知的DEV-C++充其量只是GCC的一外壳,它所自带的C/C++编译器就是Mingw32的一版本。
这些GCC的版本中,Cygwin是最大的,它与其说是一C/C++编译器,倒不如说是一套编程工具。它不仅有C/C++编译器,还有其它很多的工具。其实,它就是一UNIX系统在WIN32平台上的实现。实现了大多常用的UNIX工具,最近的版本中连Apache这样的“工具”都集成进来的。
不过,Cygwin虽然功能强大,但它却不是很易用(和UNIX相似,熟悉UNIX的人用它可以很快上手),因为太多其它的工具分散了人们的注意力。相比之下Mingw32就要好用得多,它只有最基本的几编程工具(只可惜它不自带GDB)。GCC中并不只是C/C++C/C++编译器。
其中还有很多其它的C/C++编译器如J***A,Fortran,ADA等。它是一C/C++编译器集合,不过有些C/C++编译器只能在UNIX系统上用。MS家族的C/C++编译器就不用说了,大家对它们都很熟悉。VC 7.0(VC.NET)是它的最新产品。Borland家族也不用说,大家也是耳熟能详。最近它才推出了BCB 6.0。
其它的C/C++编译器如:Intel C/C++大家一看名称就知道是Intel的东西,它和VC6完全兼容,不过要挂在VC6下才能用。Watcom C/C++是早先C/C++编译器四国大战中的一员,原本是很不错的东西,可惜战略不对,现在已不见声息了。倒是以它为基础的一OpenWatcom现在还在奋战。
VectorC是我近日才发现的一好东东,它是纯C的C/C++编译器。IBM的VisualAge for C++原本是IBM想用来淌C++C/C++编译器这片浑水的东西,不过IBM的战略改了,它就被放弃了。DigitalMars C/C++的前身的Symantec C++(它也是C/C++编译器四国大战中的一员),不过现在Symantec不做了,于是它的作者就把它改成了DigitalMars C/C++开放给大家使用。以上这些都是WIN32平台上的东西。
KAI C/C++很强大的C/C++C/C++编译器,它是多平台的C/C++编译器。不过现在被INTEL收购了,已经停止开发了。Lcc4.1是纯C的C/C++编译器它是开放源代码的。不过不怎么好用。LCC-WIN32是一在LCC基础上开发的C语言的集成开发环境。
很好用,而且有很详细的资料,FREE!Pacific C是一纯DOS的C的集成开发环境,就不多说了。Small C CC386都是开放源代码的C/C++编译器,它们都很简单,应用来给大家学习C/C++编译器的。Quincy Eic CINT都是C的解释器,是用来让大家学习C语言的其中CINT的功能很强大,还支持一些C++的特性。