下半年到东北某地校招,面试了12人,其中有当过C语言助教,有自学C语言编程的,问了4人,全都还在用谭浩强的C教材。老实说,听到这样的回答,我很是诧异,现在市面上有这么多好书可选,有不少学校和学生(非计算机专业)却还在用谭浩强的书。
昨天给公司人力同事提了一份面向嵌入式软件开发工程师的书单/在线资源,正好有几本C语言或相关书籍,单列在此。其中大部分书我至少读过一遍。
基础(C语言入门,初学,编程基础)
- 《C语言程序设计:现代方法》(第2版)(C Programming: A Modern Approach, 2nd Edition, K.N.King)
- 《深入理解计算机系统》(修订版或第2版)(Computer Systems: A Programmer's Perspective, Randal E. Bryant et al)
- 《C语言程序设计》(第2版)(The C Programming Language, Brian W. Kernighan & Dennis M. Ritchie)
- 《程序员修炼之道》(The Pragmatic Programmer: From Journeyman to master, Andy Hunt & Dave Thomas)
内核/驱动
- 《Linux内核设计与实现》(第3版)(Linux Kernel Development, 3rd Edition, Robert Love)
- 《Linux设备驱动程序》(第3版)(Linux Device Driver, 3rd Edition, Jonathan Corbet et al)
- 《深入Linux内核架构》(Professional Linux Kernel Architecture, Wolfgang Mauerer)
应用
- 《UNIX环境高级编程》(Advanced Programming in the UNIX Environment, W. Richard Stevens)
- 《UNIX网络编程》(Unix Network Programming, W. Richard Stevens)
进阶
- 《C陷阱与缺陷》(C Traps and Pitfalls, Andrew Koenig)
- 《C专家编程》(Expert C Programming, Peter van der Linden)
- 《ARM嵌入式系统开发:软件设计与优化》(ARM System Developer's Guide: Designing and Optimizing System Software, Andrew Sloss et al)