C/C++编译器的选用
C/C++编译器的选用
特别说明:
鉴于时不时的有人问关于用什么编译器的问题,我翻译了Bjarne
这个翻译稿的粘贴过程中失去了所有超级连接(pfan提供的编辑功能不够好),我只好另外在旁边附加上,抱歉。
另外,为了避免重复发贴,我把本站sarrow原来的相关文章也复制过来,供彷徨中的朋友参考。
一个C++编译器的不完全列表
我(Bjarne
我建议人们选用一个编译器时认真考虑它跟标准的一致程度。如果可能,避免使用任何不太符合ISO标准或者不支持标准库某项实现的编译器。所有主要C++编译器供应商的最新版本都做得不错。
如果你是新手,不知道怎么识别一个编译器是否合适,试试编译下面这个程序:
#include<iostream>
#include<string>
using
int
{
}
如果一个编译器不能处理这么简单的程序,那它不适合用来学习标准C++。(如果你剪切和粘贴以上代码,小心#include
尽管现在这些细节问题早已经陈旧,这里有一篇很长的文章论述一致性问题
大多数编译器内嵌在软件开发工具框架和库里面。这些框架、环境和库对你可能非常有用,但是记住使用它们会把你锁定到单一供应商,而且一些应用存在严重的运行性能问题。
当在网上寻找C++的时候,你会发现很多信息”隐藏”在各自产品下面。事实上,我用google.com寻找C++编译器比直接联系C++编译器供应商更方便。在此,忽略市场商标,我列出很多C++编译器的提供者。
一些编译器可以免费下载(尝试商业应用前要看看他们的条件/许可证):
Apple
Bloodshed
Borland
Cygwin
Digital
MINGW
DJ
GNU
IBM
Intel
The
Microsoft
Sun
一些编译器需要支付费用(有些允许试用期内免费下载):
Borland
CodeWarrior
Comeau
Edison
Green
HP
Intel
Mentor
Microsoft
Paradigm
The
SGI
Sun
WindRiver's
对于我而言,让该列表完整和保持最新状态不太可能。C++世界太大,新东西出现太快。对于那些我未能列出来的供应商表示歉意,我知道会有一些,如果你有一个连接并认为应该在此列出来的话,请给我写信:bs
C++编译器的其他列表:
The
Compilers.net
一个过滤器可以用来改善很多编译器的错误信息,见STLfilt
sarrow朋友关于
连接:http://bbs.pfan.cn/post-204274.html
题头:
正片开始:
Dev-C++
本软件就不用说了,这是pfan论坛上的首选IDE环境;他默认安装minGW作为编译器——就是windows化了的GCC编译器。版本应该是3.4;
由于其编辑器使用简单,而内核gcc3.4对c99和c++2003的支持度都比较高,所以,这个软件比较适合标准C/C++初学者!除了支持外部库,Dev-C++还支持自己的开发包,你可以从升级“包”这个功能上获得许多有用的东西;
你可以在http://www.bloodshed.net获得它的下载。
WxDev-C++
不知道是英雄落幕还是怎么的?Dev-C++已经停止更新了!最新的版本应该是4.9.9.2——不更新,这个就计较郁闷了!不过,另一波人把这个项目接了过来,在Dev-C++的基础上添加了很多的东西,比如RAD工具(就是像VB那样,能快速通过拖拉就可以做win32程序界面的工具),还修改了前作
还有就是它兼容vc6、vc7、vc8的工程设置——就是说,vc6、vc7、vc8的工程可以照搬到WxDev-C++下来使用!
当然,最大的好消息,就是,这么好的工具竟然也是免费的!
下载:http://wxdsgn.sourceforge.net/
Code::Blocks
这个有着怪名字的东西,是个比较新的免费IDE,当前是面向C/C++使用而开发的工具;注意,这个是开源跨平台的哦!这个软件是用插件式构架的,那么这个软件就设定成可以非常的个性化!
由于它支持多编译器,所以,它没有默认绑定编译器;由于它支持的编译器比较多,我就挑点讲:
minGW的GCC编译器、vc7还有vc8以及Borland
下载:http://www.codeblocks.org/
Ultimate++
这个软件也式跨平台的——就我看来,其最大的特点,就是有自己的GUI库!
下载:http://www.ultimatepp.org/index.html
Eclipse
这个巨大的东西,也是跨平台的——不过这个东西太大了点,我也就不说了——不符合简单易学的规则。
下载:http://www.eclipse.org/
VC
最后,哈哈,因为个人的原因,我把Microsoft公司的VC产品放在最后。VC6、VC7、VC8者是当前还活跃的3个ms的C/C++编译环境——不过可惜的是,他们都不是免费的!
在这里提VC的原因呢,有两点:
1.
2.
Microsoft
这个编译工具包——免费!
然后Microsoft
尾声:
对于NB的人来说,有没有IDE都一样!IDE只是快速开发的工具而已!
这里,我要说说为什么把ms公司的VC系列放最后的原因:竞争才有进步,而ms的公司的策略,就是只让自己独活;像VC系列IDE这样大包干的做法,我是认为不正确的——一个把更多的选择权留给使用者。
我(Chipset)使用C/C++编译器和IDE的历史:
我个人只用过少数几种编译器和IDE,简单描述一下感受。
1、VC++6.0
这个IDE在Win32上很流行,尤其在恋古情节和盗版盛行的中国教育界。
VC++6.0对C90标准支持的不错,但是对C99和C++98都支持的很弱。VC++6.0本身的bug非常多,不过调试功能相当不错,可惜这点长处对我来说基本没有什么意义,因为我从来不用调试器。
VC++6.0的缺点非常明显,主要是库函数很多错误,存在严重问题,由于97年底竣工,不支持C99和C++98,不过我们不得不承认VC++6.0
如果您对VC++6.0仍旧情有独衷,迅雷搜索一下,有很多下载地址。
2、Dev
说真的,这是一款非常好的IDE,内嵌gcc编译器(含g++3.4.2),体积小,安装完毕就50MB的空间,对C99和C++98/03支持都很好,而且可以编写Windows程序,在Win32平台上尤其适合初学者。缺点是升级困难,因为它06年后已经不再升级,不过令人欣慰的是WxDev-C++继承了它的脚步。
3、VS2005
这是一款重量机的IDE(内嵌多种编译器,包括MS
4、Intel
必须把Intel
5、Code::blocks8.02+MinGW(gcc3.4.5)
我不得不说,Code::block8.02简直就是一款划时代的开源IDE,除了支持多种平台,几乎可以满足最苛刻的商业应用,支持10多种编译器,支持VC++工程、Visual
6、Code::blocks8.02+gcc4.3.2+boost1.37
这个我就不说了,本站有我的一篇文章讲述安装配置的,详细的情况见我的博客。
7、gcc4.3.2(Linux)
gcc编译器不仅仅用于PC也可以用于嵌入式系统和服务器级别的C/C++程序编译,配合Open
[Deitel94] H. M. Deitel ,《 C 程序设计教程( C How to Program )》第二版,中。 [Prata04] Stephen Prata ,《 C Primer Plus ( C Primer Plus )》第五版,中 E 。 [Kelley97] Al Kelley 、 Ira Pohl ,《 C 语言教程( A Book on ...
http://bbs.topsage.com/dispbbs_121_171227_1.html
C语言趣味程序百例精解
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=158110
Sams出版 Advanced C 高级C语言开发
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=165502
C数值算法程序大全
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=158109
C语言专家编程
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=158108
C语言程序设计案例精编
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=157722
C语言进阶
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=157745
C Primer Plus [SAMS]
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=176001
C Pocket Reference [O'Reilly]
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=176000
Practical C Programming
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=176501
The C Programming Language
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=177761
吉林大学C语言视频教程 全51集 CSF格式
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=177517
C语言基础视频教程 全14讲 完整上架
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=181035
C语言程序设计视频教程 曾怡教授讲解 全28讲完整版下载
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=181575
数据结构视频教程 清华大学严蔚敏主讲 全48讲 完整版 ASF格式
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=165468
数据结构C语言版视频教程 全52讲完整版
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=156467