Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

C is a low level language that compiles down directly to assembly. It is similar to Go in this regard, but is a bit lower level. You have to manage memory yourself and pointers in C are much more dangerous. Reasons to learn C would include: absolute performance needed maybe for say a Python C extension, kernel hacking, some other project you want to contribute to uses C.

I think it’s good to at least play with C and understand how memory management and pointers in C work, but I don’t think I would recommend you go out of your way to learn C or spend any significant amount of time writing it. At the end of the day it’s just another tool in the toolbox. I would recommend the book Code, by Petzold, if you want to really want to explore computers at a low level in a friendly format.



nitpick. I think C compiles directly to machine code. There's no intermediate step of compiling to assembly first.


> language that compiles down directly to assembly

Directly to machine code, not assembly.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: