Should I still learn C if I already know Assembly

assemblyc

Often one of the main reasons given for learning C is that it brings you closer to programming at a low level which gives you insights into how things really work in higher level languages.

I've been programming in various Assembly flavors for awhile and you can't get any lower level than what I have been coding in and I have no illusions about what reference types or pointers really are. It should be pointed out that I also am fairly prolific in Java and C#. I don't only know assembly.

Is it still worth the effort cracking open K&R and spending some valuable time learning the intricacies of the C language or would my time best be served learning something else?

Best Answer

Often one of the main reasons given for learning C is that it brings you closer to programming at a low level

Well, scratch that one off, look at the others and decide for yourself. If you want to:

  • remain close to low level but gain portability
  • be able to work with the huge codebase that C has already
  • just learn something new

then you might want to learn C.