除了gcc, 还有哪些常用的牛逼的编译器?

时间:2024-04-12 16:37:27

01.Clang

Clang是一个C语言、C++、Objective-C语言的轻量级编译器。源代码发布于BSD协议下。Clang将支持其普通lambda表达式、返回类型的简化处理以及更好的处理constexpr关键字。
Clang是一个C++编写、基于LLVM、发布于LLVM BSD许可证下的C/C++/Objective-C/Objective-C++编译器。它与GNU C语言规范几乎完全兼容(当然,也有部分不兼容的内容,包括编译命令选项也会有点差异),并在此基础上增加了额外的语法特性,比如C函数重载(通过__attribute__((overloadable))来修饰函数),其目标(之一)就是超越GCC。

02.Microsoft Visual C++

Microsoft Visual C++(简称Visual C++、MSVC、VS或VC)是微软公司的C++开发工具,具有集成开发环境,可提供编辑C语言,C++以及C++/CLI等编程语言。VC++集成了便利的除错工具,特别是集成了微软Windows视窗操作系统应用程序接口(Windows API)、三维动画DirectX API,Microsoft .NET框架。目前最新的版本是Microsoft Visual C++ 2019。
它以拥有“语法高亮”,IntelliSense(自动完成功能)以及高级除错功能而著称。比如,它允许用户进行远程调试,单步执行等。还有允许用户在调试期间重新编译被修改的代码,而不必重新启动正在调试的程序。其编译及建置系统以预编译头文件、最小重建功能及累加连结著称。这些特征明显缩短程式编辑、编译及连结花费的时间,在大型软件计划上尤其显著。

  • 开发环境:Visual Studio
  • 链接:https://baike.baidu.com/item/Visual%20Studio

03.Pelles C

它包含了适合为Windows和PocketPC做开发的诸如优化的C编译器,连接器,资源编译器,消息编译器,make实用程序和安装包制作程序等特性。
它还包含了一个集成开发环境(IDE)与项目管理器,调试器,源代码编辑器和资源编辑器对话框,资源编辑器可以编辑菜单,字符串表,位图,图标,光标,动画影片(AVI不带声音),版本和XP界面样式等应用程序资源。
Pelles C编译器早期是基于LCC(由克里斯·弗雷泽和戴维·汉森设计开发),但随后做了大量的改进,当前已经完全独立。
Pelles C 支持最新C99 和C11标准,并且是完全免费的。Pelles C是当前对标准支持最好的C语言开发工具。
最新的Pelles C 8.0添加了OpenMP、AVX等高级功能的支持,是目前Windows下学习C语言最好的系统。
除了gcc, 还有哪些常用的牛逼的编译器?
Pelles C于1999年发布第一个版本。2014年4月27日发布最新的Pelles C 8.0 RC4 版。
Pelles C 7.0有以下特点:
1、整合资源编辑器。
2、集成位图,图标,光标编辑器。
3、集成的动画光标编辑器和视频编辑器。
4、集成的十六进制转储编辑器。
5、集成的源代码级调试器。
6、集成的源代码编辑器,Win32 API调用提示。
7、项目管理器。
8、支持Intel语法的内联汇编程序。
9、支持用对话框编辑器自定义控件。
10、支持其他项目向导。
11、支持微软的异常处理的__try,__except的,__finally,__leave。
12、支持微软的新的导入库。
13、支持延迟加载的DLL。
14、最新C11功能的支持。
15、支持Pocket PC 开发。
16、PellesC是完全免费的!

04.Watcom C/C++

Watcom C/C++ 编译器、Watch Fortran 编译器已经不在其先前所属公司Sybase售卖, 而被 SciTech 软件公司 作为 Open Watcom 开源包 发行。类似于其他的 开源编译器(例如 [GCC])项目,Watcom C代码小而便携, 其编译器后端(代码生成器)的目标码可变。该编译器可在DOS、OS/2、Windows等操作系统上运行,并生成各种可运行的(不必是该操作系统的)代码。
该编译器支持Novell NetWare的 NLM 目标码。目前正进行 为 Linux、modern BSD (例如FreeBSD) 操作系统 重定目标码, 以便在 x86、PowerPC 及 其它处理器上运行。Open Watcom C/C++ 的1.4版于2005年12月发行,采用 Linux x86 为实验目标, 支持NT、OS/2等host平台. 曾有某被弃置的QNX版本,但其编译所须的库并未开源发行。当前最近的稳定版是1.9版,在2010年6月发行。

05.Tiny C Compiler(TCC)

Tiny C Compiler(TCC) 是一个轻量级高速的C语言编译器。与其他C语言编译器不同,它是一个自我依赖的系统,不需要其他外部的汇编器和连接器。TCC的编译速度十分快,以至于编译一些大型项目都不需要Makefile文件。 TCC支持ANSI C,大部分的 ISO99 C的新标准和许多GNU C扩展以及C语言和汇编语言混编。 TCC可以用来执行 C 脚本,即C语言源文件可以像Perl和Python一些脚本语言一样直接执行。编译过程十分迅速和可执行文件的执行速度不相上下。 TCC可以自动生成内存和边界检查,并允许所有的指针操作,即使没有相应库文件的引入,编译器依旧可以完成相应的检查工作。 TCC主要支持i386体系下的Linux和Windows系统。如今已经有测试版的ARM和TMS320C67XX体系下的TCC编译器。

06.gcc

gcc是GNU编译器套件(GNU Compiler Collection),它包括了C、C++、Objective-C、Fortran、Java、Ada、Go语言和D语言的前端,也包括了这些语言的库(如libstdc++、libgcj等等)。GCC的初衷是为GNU操作系统专门编写的一款编译器。GNU系统是彻底的*软件。此处,“*”的含义是它尊重用户的*。