Recommended C Books

(Return to Home page)

Last updated 1 August 2001

#include <disclaimer.h>

Rick Dearman first posted this list (to the best of my knowledge and belief) in comp.lang.c some time in 1998 or 1999. At some point I thought "that's a good list - I'll pinch it", so I did, and occasionally, when Rick wasn't around to post it himself when people asked about good books on C, I would post it instead. At some point, Rick then claimed that he'd never heard of this list, and was glad I'd come up with it, and could he pinch it?

Conclusion: this list was written by nobody[1]. But I seem to have been landed with the job of maintaining it.

Shut up, Richard. Here's the list:

General introduction/tutorial:

(1) For real beginners looking for a solid introduction:

C Programming: A Modern Approach, K.N.King, W.W.Norton & Company, 1996. ISBN 0-393-96945-2

(2) For somewhat more experienced users looking for a solid introduction:

The C Programming Language, 2nd Ed. Kernighan & Ritchie. Prentice Hall, 1988. ISBN 0-13-110362-8

(3) Other recommended introductory books:

C: How to Program, 2nd Ed. Deitel, H.M. & Deitel, P.J. Prentice Hall, 1994. ISBN: 0-13-226119-7

Reference books:

C: A Reference Manual, 4th Ed. Harbison & Steele. Prentice Hall, 1995. ISBN 0-13-326224-3

The Standard C Library. P.J.Plauger. Prentice Hall, 1992. ISBN 0-13-131509-9

C Programming FAQs Steve Summit. Addison-Wesley, 1996. ISBN 0-201-84519-9

ISO/IEC 9899:1999 ISO. Available from various national standards bodies.

Advanced topics / further exploration:

C Traps and Pitfalls. Andrew Koenig. Addison-Wesley, 1989. ISBN 0-201-17928-8

Expert C Programming: Deep C Secrets, Peter van der Linden, Prentice Hall, 1994. ISBN 0-13-177429-8

Practical C Programming. Steve Oualline. O'Reilly & Associates, 1993. ISBN 1-56592-035-X

Problem Solving And Program Design In C, 2nd Ed. Hanly & Koffman. Addison-Wesley, 1996. ISBN 0-201-59063-8

Algorithms in C, 3rd Ed. Robert Sedgewick Addison-Wesley, 1998. ISBN 0-201-31452-5

C Unleashed *, Heathfield, Kirby et al, Sams Publishing, 2000. ISBN 0-672-31896-2

*Disclaimer: for a long time I left C Unleashed off the list, because I was waiting to see whether it would become well-regarded within comp.lang.c; I considered it irresponsible to regularly post, in that newsgroup, a URL which advertised my own book, without having some indication from the newsgroup that it was acceptable so to do. In a thread at the end of July 2001, however, several regulars within the newsgroup convinced me that it was time to add the book to the list (and one or two evinced surprise that I had not done so already). Of course, I should add that several of the regulars were contributors to the book! Naming and blaming time: apart from myself and Lawrence, other clc contributors to the book include:

(Some of these haven't been seen around for a while, more's the pity.)

It occurs to me that this disclaimer draws more attention to the book than is perhaps fair on the other books! This can be rectified easily, if you wish it. Simply write a short summary of any of the other books, and I'll post it here. Please try to keep it to fewer than two thousand words. :-)

Jack Klein offers a more detailed discussion of some of these books on his site. Also, you might want to check reviews by the Association of C and C++ Users before buying a book of whose value you are unsure.

[1] ...or so I thought. On 3 August 2001, I received an email from Ian Hay, most of which is reproduced below.

Hi Richard -

I haven't lurked in c.l.c. for a looooong time, but I'm hoping you'll remember me vaguely. I happened to take a look at the c.l.c. group for the first time in a while, and found a discussion about book recommendations. I saw your link to this page (I believe mantained by you) [URL snipped] at the beginning of which you say [Elided. So read up! - RJH]

To solve a minor (and totally insignificant) mystery, it was originally compiled by none other than myself (though it has been modified and augmented a bit - presumably for the better.) It was first posted on April 17, 1999, and then a few times afterwards. I recall you specifically thinking it was a good list. The first appearance (I believe) is linked below:

(Click here to link to the article in

Anyways, this message is [...] I guess to maintain the integrity of c.l.c.'s institutional and collective memory. I think it's really cool that a complete C amateur (who hasn't written a line of code in three years - I've been in law school) compiled a book list that's still maintained and referred to.

Greetings from Toronto, and glad to see that all the regular posters are still here.


You are visitor number - come back soon!