Basic C experience, lots of time, a computer with 5 GBs, a Library card, and some cash if you want.
You don't need C exp. at all. You don't even need any programming exp. although php helps a a hella lot.
tip: try to write the code as small as you can instead of a lot of unessential code, a lot of tutorials out there don't teach you this but its best to do this as soon as you start learning.
And the best book out there IMO is ThinkCpp.
- explains ALOT
- explains how to debug and why its useful (Makes you do this throughout the tut since it's very crucial)
- Doesn't step to far ahead like from helloWorld then start doing variables straight away