ISO/IEC JTC 1 / SC22 / WG14 is the international standardization working group for the programming language C.

The current standard for Programming Language C is ISO/IEC 9899:2011, published 8 December 2011, and known as C11. However, this has to be purchased from ANSI, ISO, or the BSI. Here we present the available draft, and thus free, versions of the standard.

The earliest standard was ANSI X3.159-1989, released in 1989, and referred to as ANSI C or C89. Before this the unofficial standard for C was Brian Kernighan and Dennis Ritchie's first edition of The C Programming Language, which was published in 1978. This original version is normally referred to as K&R C.

Available C Standard Drafts and Related Reports

The following are the the documents that are available for the C89/90, C99 and C11 standards:

N1570 is C11, 12 April 2011 (original from WG14).

N1256 is C99 + 3 technical corrigenda, 7 September 2007 (original from WG14).

The C99 rational describes the intent of the standard's authors and other gives helpful background (original from WG14).

The older C89 standard might be of historical interest. As a text file, the satandard is ansi-c89w.txt or ansi-c89u.txt (given here with Windows and Unix line ends). There is a more readable HTML version at port70.net/~nsz.

Other Related Standards and Reports

The following are a selection of interesting documents from WG14 and elsewhere.

Embedded C: N1169 (original from WG14), April 2006.

Safe Library functions: The draft of this technical report, written in 2005, is N1146 (original from WG14). A rationale is in document N1147 (original from WG14); and N1135 (original from WG14) is also relevant to this issue.

Decimal Floating Point: N1176 (ooriginal from WG14); and a rationale is in N1177 (original from WG14), 23 May 2006.

Threads Library: N1269 (original from WG14), 8 November 2007.

C Coding Standard: N1255 (original at WG14), 10 October 2007.

Vulnerability, Safety, Security, and Quality: N1232 (original from WG14), 26 April 2007.

Differences Between C89 to C9X by Thomas Wolf

Incompatibilities Between ISO C and ISO C++ by David Tribble

And as a by the way, here is The Ten Commandments for C Programmers by Henry Spencer

Useful Sites

The WG14 document register, which is part of the WG14 site, is a comprehensive list of draft C standards and related reports. However, it is not very easy to navigate.

The clc-wiki C Standard is a good explanation of the various C standards, and has a more comprehensive list of sources than is given here.