

(Note: updated several sections based on feedback from Lobste.rs, HN, and Reddit. The focus is C89, with comparisons to the later standards C99 and C11 when relevant. Some of it may be old news to you, and conversely I may have omitted something that seemed basic to me but would have been useful to mention. It’s just things that were new or interesting to me. This article is not a comprehensive explanation of the standard by any means. I can see why these were historically the most frequently asked questions.
PJ PLAUGER STANDARD C LIBRARY CODE
Lists real code that caused vulnerabilities. Illustrates potential insecurity with, among other things, the standard library.


PJ PLAUGER STANDARD C LIBRARY FULL
It has a chapter for each header, with background information, an excerpt from the C89 standard, tips on use, and full implemention with tests. Plauger’s book The Standard C Library (ISBN 978-0131315099) where he examines an implementation of all the functions. After diving into the C language through K&R, and then studying portability (see C Portability Lessons from Weird Machines), my next challenge was to take a systematic look at the standard library.
