C
Links of Relevance
- JTC1/SC22/WG14: the C standards committee web page
- The current definition of the language, C11 (a most recent draft of the actual standard)
- The previous definition, C99 (a draft of the actual standard); see also an older version
- A draft of the next standard
A repository of C-related documents, and links to such
The new C standard: an economic and cultural commentary: a book thoroughly commenting the C99 standard
A concise description of the standard library
Dinkum Compleat Libraries: a highly esteemed reference to the standard library; now gone, but try this archived copy
Essential C: a set of course texts from the Stanford CS Education Library
A book on C programming for beginners, that once used to be in print
Hands On: C/C++ Programming and Unix Application Design, and a much extended version for printing: a book on C (and C++) programming and Unix system programming, including X/Motif
Notes on programming in C (remarks on style); also in PDF
C traps and pitfalls
Why Pascal is not my favorite programming language (a comparison with C); also in PDF
Object oriented programming with ANSI C: a book
COS (C Object System), also here: a C89 library for OOP ‘and beyond’; described here
IOCCC: The International Obfuscated C Code Contest – extremely twisted and often truly ingenious C programs
The Ten Commandments for C Programmers (a parody)
- Freely available implementations:
- GCC, the GNU Compiler Collection for Linux. There are ports to MS DOS, MS Windows (or this), and Mac OS X
- lcc and lcc-win32 for MS Windows
- Pelles C: a compiler for MS Windows based on lcc
- Pacific C for MS DOS (if currently unavailable, try this link and this for the documentation)
- TCC – The Tiny C Compiler: very small, very fast, and producing small code
- pcc: the Portable C Compiler
- clang: a C/C++/Objective-C/Objective-C++ frontend for LLVM
- The EiC C Interpreter
- Also see any C++ compiler
- Tools:
- Splint: a modern, open-source version of lint
- Metre: a parser, a software-metrics tool, and a call-tree generator for C
- CIL: a high-level representation along with a set of tools for program analysis and source-to-source transformation of C programs
- CCured: a source-to-source translator for C, securing against memory safety violations
- History. C’s ancestors:
- The home page of (late) Dennis M. Ritchie, the author of C
- The Development of the C Language; also in PostScripts and in PDF
- User’s reference to B
- The Programming Language B
See also BCPL
- Clones:
- Cello: a library that introduces higher level programming to C (containers, collections, interfaces, first-class functions, constructor/destructor-based memory management)
- Cyclone: a safe dialect of C, with pattern matching, algebraic datatypes, exceptions, etc.
- C∀ (C-for-all): a (mostly) conservative extension/improvement to C
- MetaC: a C with metaprogramming facilities – reflection, refactoring, reconfiguring and modifying arbitrary C source code
- `C: a C with dynamic code generation
boykobbatgmaildotcom