C


Dennis Ritchie, Bell Labs, about 1972


C was originally a systems language for Unix on the PDP-11, briefly named NB. It was influenced by BCPL through Thompson's B[1]. C is terse, low-level and permissive. Preprocessor. Partly due to its distribution with Unix, C became the language most widely used for software implementation.

K&R C

C as originally described.

"The C Programming Language", Brian W. Kernighan & Dennis Ritchie, Prentice-Hall, 1978.

ANSI C

A revision of C, adding function prototypes, structure passing and assignment, and standardized library functions. ANSI X3.159-1989.

GNU C

Many extensions: compound statement within an expression, pointers to labels, local labels, nested functions, typeof operator, compound and conditional expressions and casts allowed as lvalues, long long ints, arrays of variable lengthmacros with variable number of arguments, nonconstant initializers, constructor expressions, labeled elements in initializers, case ranges, variable attributes.

"Using and Porting GNU CC", Richard M. Stallman, 16 Dec 1992.