ReviewModern C Design Andrei Alexandrescu A groundbreaking book on advanced generic programming techniques. Introduces policy based design, type lists, and fundamental generic programming idioms then explains how many useful design patterns including small object allocators, functors, factories, visitors, and multimethods can be implemented efficiently, modularly, and cleanly using generic programming. ReviewC Template Metaprogramming David Abrahams and Aleksey GurtovoyC Concurrency In Action Anthony Williams A book covering C1. C memory model, locks and mutexes, as well as issues of designing and debugging multithreaded applications. Advanced C Metaprogramming Davide Di Gennaro A pre C1. TMP techniques, focused more on practice than theory. There are a ton of snippets in this book, some of which are made obsolete by typetraits, but the techniques, are nonetheless useful to know. If you can put up with the quirky formattingediting, it is easier to read than Alexandrescu, and arguably, more rewarding. For more experienced developers, there is a good chance that you may pick up something about a dark corner of C a quirk that usually only comes about through extensive experience. The C Standard INCITSISOIEC 1. This, of course, is the final arbiter of all that is or isnt C. Be aware, however, that it is intended purely as a reference for experienced users willing to devote considerable time and effort to its understanding. As usual, the first release was quite expensive 3. Annotated C Reference Manual Stroustrup Pdf Creator' title='Annotated C Reference Manual Stroustrup Pdf Creator' />US, but it has now been released in electronic form for 6. US. The C1. 4 standard is available, but seemingly not in an economical form directly from the ISO it costs 1. Swiss Francs about 2. US. For most people, the final draft before standardization is more than adequate and free. Many will prefer an even newer draft, documenting new features that are likely to be included in C1. Overview of the New C C1. PDF only Scott Meyers updated for C1yC1. These are the presentation materials slides and some lecture notes of a three day training course offered by Scott Meyers, whos a highly respected author on C. Even though the list of items is short, the quality is high. The C Core Guidelines C1. Bjarne Stroustrup and Herb Sutter is an evolving online document consisting of a set of guidelines for using modern C well. The guidelines are focused on relatively higher level issues, such as interfaces, resource management, memory management and concurrency affecting application architecture and library design. The project was announced at Cpp. Con1. 5 by Bjarne Stroustrup and others and welcomes contributions from the community. Most guidelines are supplemented with a rationale and examples as well as discussions of possible tool support. Many rules are designed specifically to be automatically checkable by static analysis tools. The C Super FAQ Marshall Cline, Bjarne Stroustrup and others is an effort by the Standard C Foundation to unify the C FAQs previously maintained individually by Marshall Cline and Bjarne Stroustrup and also incorporating new contributions. The items mostly address issues at an intermediate level and are often written with a humorous tone. Not all items might be fully up to date with the latest edition of the C standard yet. C0. 31. 11. 41. Nate Kohl is a wiki that summarizes the basic core language features and has extensive documentation of the C standard library. The documentation is very precise but is easier to read than the official standard document and provides better navigation due to its wiki nature. The project documents all versions of the C standard and the site allows filtering the display for a specific version. The project was presented by Nate Kohl at Cpp. Con1. 4. Note Some information contained within these books may not be up to date or no longer considered best practice. The Design and Evolution of C Bjarne Stroustrup If you want to know why the language is the way it is, this book is where you find answers. This covers everything before the standardization of C. Ruminations on C Andrew Koenig and Barbara Moo ReviewAdvanced C Programming Styles and Idioms James Coplien A predecessor of the pattern movement, it describes many C specific idioms. Its certainly a very good book and might still be worth a read if you can spare the time, but quite old and not up to date with current C. Large Scale C Software Design John Lakos Lakos explains techniques to manage very big C software projects. Certainly a good read, if it only was up to date. It was written long before C9. If you need to work in a big C software project, you might want to read it, although you need to take more than a grain of salt with it. The first volume of a new edition is expected in 2.