Here is a list of some prominent compilers, whether open source or proprietary.

List of Compilers Edit

GCC - The GNU Compiler Collection Edit

This collection of compilers for C, C++, and other languages is most probably the most recommended: it is standards-compliant, it is feature-rich, runs quickly enough, produces fast code, contains some useful extensions (which should not be used at first), and is open-source, gratis and portable (runs on UNIX, Mac OS X and Windows). The only downside to gcc is that its Integrated Development Environments (IDEs) may not provide the same experience as those for more proprietary compilers (see below).

Microsoft Visual C++ Edit

Microsoft Visual C++ is a popular compiler for Microsoft Windows (32-bit and 64-bit), especially as part of Microsoft Visual Studio. While MS Visual Studio is a convenient integrated development environment, the default underlying compiler (sometimes known as CL.EXE) has poor support for recent C standards (see C99), lags behind GCC and other compilers in its convenient features and extensions, and its help files and behavior tends to encourage non-portable programming. As such, it is not very recommended for people who are starting with C.

LLVM and clang Edit

LLVM (low level virtual machine) is an open source (under the BSD licence), portable, and more recent alternative to GCC written in C++, especially after combined with clang, its accompanying compiler. More advanced users, may wish to experiment with it.