4 ms·
You should absolutely learn C. A good knowledge of C is a very valuable asset for all sorts of work, especially on Unix. Thankfully, C is straightforward to le
by neilc 18y ago
You should absolutely learn C. A good knowledge of C is a very valuable asset for all sorts of work, especially on Unix.
Thankfully, C is straightforward to learn. The major concept you need to understand is pointers; once you've done that, there are some syntactic oddities to absorb (typedefs, function pointer syntax, arrays vs. pointers), and you should skim through the standard library (which is tiny compared to Java, or even C++), and you're most of the way there.
In addition to K&R, I've hears that Steele and Harbison's "C: A Reference Manual" is very good, although I haven't read it personally.
- dnewcome 18y agoI have Steele and Harbison's "C: A Reference Manual", and _is_ very good, but probably not for _learning_ C. It does have very good explanations of some under-the-hood things that I haven't found elsewhere. It is also a good reference on the C std library, and does a good job at pointing out possible incompatibilities between ISO C, `traditional' C, and vendor-specific dialects. One of the things that I have always found confusing about C is that code can be written in several ways, depending on how lax the compiler is about enforcing different versions of the C standard.