Free C Programming PDF Book
Even as a competent C programmer, I still love to download these PDFs just to browse when on long flights or car rides. Thanks for sharing.
More on reddit.comCan anyone recommend a good source to learn C for someone who already knows the basics of programming?
What is the best book to learn C for self learning beginner?
K&R is a must-read, especially for historical context, but the best book for a newbie is K.N. King's C Programming: A Modern Approach 2nd Edition
More on reddit.comBooks on programming in C
C Programming: A Modern Approach is quite good, and before I go into detail, let's pause for a moment and discuss "The C Programming Language" by Dennis Ritchie.
It's incredibly good, provided you're an experienced programmer. It's incredibly bad otherwise. There's no doubt Ritchie knew his stuff (he did create the language), but from a learning perspective of a new programmer, you're going to be incredibly lost. Hell, I came from quite a bit of C++, and even after working with some C code it was quite confusing.
"A Modern Approach" is very much a book with which you can learn C, even as a beginner, but also doesn't treat you like an idiot. One thing it does quite well is it contains a "Q&A" section that covers common questions (or otherwise things you wish you had thought to ask) and is quite detailed, including some modestly challenging exercises. He posts the solutions to some of the challenges online as well.
It's not perfect, but I've never found the "perfect" book. The book is, however, thorough, reasonably easy to understand, and has a knack for knowing the mistakes rookies will undoubtedly make, as well as questions they probably have, which is surprisingly rare.
When it comes to programming books for the beginner, most fall into the category of:
-
"Cutesy" but teaches bad habits and doesn't cover enough, which is where I suspect "Head First" is firmly located based on my experience with their HTML series.
-
Advanced, which is where "The C Programming Language" firmly falls, despite what others may have you believe. Difficult if not impossible for the beginner to crack, but great coverage.
King opted for an alternative route, in that it has great coverage, isn't too advanced, but also isn't cute either. He very much gets down to business, but has an understanding of his audience. My only fault? Again, some of the examples get somewhat complicated for the beginner, and he doesn't pause every so often to tell you to take a break from reading and give you a small task to try yourself.
EDIT: Also, avoid "C: How to Program" by Dietel. Quite literally nearly half the book is just a crash course into C++. I've no idea how this ever made it past a publisher. Well, it's a Pearson book, so I have an idea, and it also helps explain the ridiculous-ass price. Put another way, for the cost of this one book, you could buy King's book and another book on C++ new, and still have money left over.
More on reddit.comSo, I've done some Python and some Go already and I don't want to learn C as if I am completely a beginner. I want to learn the unique parts of C but don't need to be taught what a for loop is or anything. Ideally, I'd love something that would walk through teaching me C while at the same time pointing out what is different from other languages. Like if someone was learning Go I might not teach them what a for loop is but I would teach them that Go has 4 basic versions and there's no such thing as a while loop.
I'm by no means an expert in programming with either Go or Python but I know the basics.
Any youtube video/series that won't spend a lot of time teaching me stuff that's unnecessary. I'm reading a book on Operating Systems (OSTEP) and I just want C to follow the exercises and write little 'scripts' to check my understanding.