C is a general-purpose imperative programming language designed by Dennis M Ritchie and specified by the international standard ISO/IEC 9899. It is the main implementation language of UNIX, and of many important Open Source packages including the Linux kernel, Perl, Apache and Bind.

Compared to many programming languages, C provides relatively little abstraction between the programming environment and execution environment. This makes it well suited to embedded and system programming tasks where there is a need to tightly control how the compiled program will behave. For other uses its low-level nature is more likely to be a hinderance than a benefit, partly because of the opportunity it provides for making mistakes.

The most widely used Open Source implementation of C is gcc (a front end to the GNU Compiler Collection) in combination with glibc (the GNU C Library). Other notable ones include Clang (a front end to LLVM) and the Portable C Compiler (pcc).


See also

Further reading