Page 1 of 1

Learning C

Posted: 2010.07.25 (05:37)
by Geti
Righto, so I was really, really average at coding in C(++ mostly, actually) 4 years ago. Turns out I'm even worse now.

I've been doing high level stuff for the last two years (I had a few years where I just didn't code anything, I was terrible at time management) and feel like getting down and dirty with gcc again. Problem is, it's like learning another language from scratch.
I've been looking around for some good tutorials, and found a few (this is okay, but really outdated) and worked through them, but I'm wondering if you guys know any good things to read when I get stuck besides straight documentation.
I'm one for teaching myself, but I figured I'd save time asking around for some resources rather than stabbing in the dark. Usually I learn the basics of a language by working with a game that I can mod, so I can have a tangible difference in what I'm doing, and then pick up a minimal framework (for lua, love, for flash, flixel) I doubt the same flow is going to apply for this (apart from the end step, which is likely going to involve C + GLib)
That's what I'm geared towards learning, I'm rusty as anything with the whole language, so if anything pops to mind (from basic syntax to implementation examples of xyz to small, useful libs) I'd appreciate the links.

Re: Learning C

Posted: 2010.07.25 (22:29)
by t̷s͢uk̕a͡t͜ư
If you're willing to pay out $20, I've heard that this book was epic, and never anything to the contrary. Although that doesn't surprise me, since its authors are brilliant and widely-known names in computer science, and one of them was the creator of C in the first place.

Otherwise, I actually can't remember how I learned C in the first place, although I do use it extensively at work.
Actually, come to think of it, it might have come from my learning C++. There's a great book on C++ that's freely available online by Bruce Eckel called Thinking in C++ (I'm too lazy to track down the link at the moment), and you can think of C as C++, minus object-orientation and namespaces.

Although if you can force yourself through something boring, you could always just sit down and read through the GNU C Library Documentation. It'd probably take you two read-throughs overall, since understanding some earlier parts undoubtedly relies on concepts described later in the documentation, but you'd come out a wizard.

Re: Learning C

Posted: 2010.07.26 (03:36)
by Geti
I'm fairly good at forcing myself through boring things... I'll give them all a look, cheers Tsukatu.

Re: Learning C

Posted: 2010.08.01 (14:30)
by kkstrong
When I took C semester 1 my teacher kept raving about Kernigan and Ritchie "Of who we are not worthy" It got really annoying, but it drove his point home, that is definitely your book. He also referred to them as black belt coding ninjas from time to time.

Re: Learning C

Posted: 2010.08.01 (20:17)
by Geti
Well, I'll look into it, and see if I'm willing to shell out the cash. Seems like it's got pretty universal approval though :P

Re: Learning C

Posted: 2010.08.02 (11:08)
by Luminaflare
kkstrong wrote:He also referred to them as black belt coding ninjas from time to time.
Best. Mental image. Ever.