I am starting the next semester on my university where we are going to be looking into computer systems and programming in C and wanted to learn a bit more on this topic. I have already coded in F#, C# and some Java but i don’t have to much experience in C. Do you guys have any good resources or small coding challenges that i could take a look at?
I used this book for learning the basic of C:
That book is typically easy to find and cheap if i recall correctly. Also I know it’s not C but there’s always learncpp.com for c++. Which in my opinion is one of the greatest websites available.
*Edit: you can get by without purchasing the book I just mention it as it’s a good a place as any to start.
codeabbey.com is great for learning how to code. is similar to project euler except is more code based than math based
People recommending C++ books/articles/sites to learn C know shit about programming. C is for low-level and systems programming.
Implement algorithms/programs you wrote in other languages in C. That’s a very good way to learn the syntax and gauge C’s strengths and weaknesses.
Get involved in an open source C project. A library for your favorite prototyping board would be a good example. I’m sure there are tons of Arduino or Raspberry Pi libraries that you can find on github.
Get involved in a big open source C project. Think big here. Linux kernel, mesa, FreeBSD kernel.
Don’t really need to actually contribute commits, just reading the code will make a world of difference to your C coding skills. But do try to contribute if you can, going through the code review process is a very good learning experience.
my favorite is the nutshell reference books. will come in handy once you start getting your hands dirty.