1、c语言学习路径建议
初级:
推荐《C Primer Plus》,跟着书慢慢读,把基础语法学会后,学数据结构,刷刷简单的Online Judge。
如果不喜欢看书学习则可以考虑视频。
进阶:
因为C语言与基础软件相关,它的注定建立在掌握基础软件的基础之上。因此开启这一步骤之前,需要掌握:
在此推荐几本书:
  • 《程序员的自我修养》
  • 《高级Unix环境编程》 / 《Linux高级环境编程》
2、c语言必学语法
不深入的话,平时做简单OJ用到的语法足够用了。C的高级用法在于宏,学习宏,要么从基础软件源码的hack技巧中学习,要么读GCC的文档。
3、c语言自学好书
《C primer Plus》 / 《C和指针》 / 《C的缺陷和陷阱》 / 《C专家编程》
4、c语言学习经验
迄今我使用的语言主要是C,熟练度是随着我读基础软件的源码慢慢起来的。当初最困惑的是两点:1. 指针(尤其函数指针),2. 递归。
如果不打算做基础软件,C能用就行。
与C有关的项目,非要接触的话,那就看linux源码吧。哈哈哈哈