
The annotated ANSI C standard
American National Standard for programming languages - C: ANSI/ISO 9899-1990
by Herbert Schildt · first published 1990
11mentions
2recommended by
6HN commenters
2010–2026first – last mentioned
33% recommend50% neutral17% critical
Affiliate links. As an Amazon Associate I earn from qualifying purchases.

Reading the Annotated ANSI C Standard by Herbert Schildt in the 1990s was one of the best things that helped me grow as a C programmer. That in part lead to a coding exercise in conjunciton with a friend where we wrote a simple ANSI C compiler…
on “C Arrays Are Not Pointers” ↗…table. That made classification easy and low cost. I don't think it's hard in practice if you use the right approach. More complex from a theory point of view, sure. I am serious when I say that the Annotated ANSI C Standard book made this easy to understand. Without that book, parsing C types certainly did not make a lot of sense to me either. It can be found here: https://www.amazon.com/Annotated-ANSI-Standard-Programming-L...
on “C was not created as an abstract machine” ↗I found the Annotated ANSI C Standard by Herbert Schildt to be far more helpful in understanding C syntax than the K&R book ever was. I was lucky enough to find it in a local book store while still in high school in 1993.
on “Reading Log for Effective C: An Introduction to Professional C Programming” ↗Thanks for this. If you can find a copy, I have found “The Annotated ANSI C Standard” by Herb Schildt (McGraw-Hill Osborne Media 1993) to be very useful.
on “ANSI C 89 with Rationale [pdf]” ↗Sounds like he needs a copy of the book "The Annotated ANSI C Standard". That book was essential to my understanding of the C language. Made writing a recursive decent parser much easier that I expected.
on “What makes C hard to compile?” ↗…in C, and the pre-processor isn't all that complex either when you have the spec in front of you. If you think it's hard, you probably didn't have the right documentation. I picked up the book "The Annotated ANSI C Standard" by Herbert Schildt sometime back in ~1993, and it made writing a recursive descent parser almost trivial. That book made C syntax actually make sense in a way that the K&R book and other introductory…
on “C was not created as an abstract machine” ↗…making them publicly available. The ISO standard that I have the most experience with is ISO/IEC 9899:1990, aka C90. Part of the reason for that, of course, is that I had a used copy of Herbert Schildt's Annotated ANSI C Standard; it's also a considerably smaller standard than, say, SQL or C++. I'm of mixed minds as to the value of the C standard. There is certainly value in having a standard. After sufficient study and deliberation,…
on ““ISO obstructs adoption of standards by paywalling them”” ↗…at $205.00 from ANSI or $200.50 from Global. Note that ANSI derives revenues to support its operations from the sale of printed standards, so electronic copies are _not_ available. The mistitled _Annotated ANSI C Standard_, with annotations by Herbert Schildt, contains all but a few pages of ISO 9899; it is published by Osborne/McGraw-Hill, ISBN 0-07-881952-0, and sells in the U.S. for approximately $40. (It has been…
on “Book Review: "Tidy First?" By Kent Beck” ↗There was a time when buying the Ansi C standard cost over $200 but you could get Herb Schildt’s “Annotated Ansi C Standard” for $20, which some said reflected the value he added to the process.
on “SMPTE Makes Its Standards Freely Accessible” ↗…implementation-dependent assumptions and pretending that they're part of the standard, as well as simply wrong code that might appear to work right "in practice" in certain situations. For example, his "Annotated ANSI C Standard" stated that void main(void) was a valid main function and that padding only appears at the end of structs.
on “Tier One: C++ Beginner's Guide - free before December 31, 2010” ↗That's a different book than the one I was referring to. I was referring to The Annotated ANSI C Standard: American National Standard for Programming Languages-C : Ansi/Iso 9899-1990.
on “Reading Log for Effective C: An Introduction to Professional C Programming” ↗