10余年开发经验的资深C语言专家全面从C语法和C11标准两大方面深入探讨编写高质量C代码的技巧、禁忌和实践
C语言因为既具有高级语言特性,又具有汇编语言特性,所以它是近二十几年来使用较为广泛、生命力较强的编程语言。无论是操作系统、嵌入式系统、普通应用软件,还是移动智能设备开发,它都能够很好地胜任,是公认的强大的语言。但是,它也是广大程序员认为较难的一门语言,大多数人都停留在“入门”阶段。作为一位C程序员,如何才能编写出健壮、优雅、高质量的代码?本书作者结合自己在该领域十几年的钻研和实践,从以下几个大的方面梳理了经常困扰“入门者”的几大类问题:
基础数据类型问题:如数据取值范围、整数溢出与回绕、浮点数精度、数据类型转换的范围检查等;
数组与指针问题:指针与地址、野指针、空(null)指针、NULL指针、void指针、多级指针、指针函数与函数指针、数组越界与缓冲区溢出等;
内存管理问题:内存分配、内存释放、内存越界与内存泄漏等;
字符与字符串问题:串拷贝与内存拷贝、内存重叠与溢出、字符串查找等;
高效设计问题:表达式设计、算法设计与函数设计、内联函数与宏的取舍等;
其他杂项问题:信号处理、文件系统、断言与异常处理、内嵌汇编的使用等。
本书是华章“编写高质量代码”系列的第7本,之前已经出版C++、C#、Java、Python、Objective-C、JavaScript相关著作。
在通往“C语言技术殿堂”的路上,本书将为你编写出健壮、优雅、高质量的C代码指点迷津!内容全部由C编码的实践组成,从C语言语法和C11标准2个方面深入探讨了编写高质量C代码的技巧与禁忌,一共总结出125条宝贵的建议。每一个建议对应C程序员可能会遇到的一类问题,不仅以建议的方式从正反两面给出了被实践证明为十分优秀的解决方案和非常糟糕的解决方案,还分析了问题产生的根源,犹如醍醐灌顶,让人豁然开朗。
本书针对每个问题所选择的应用场景都非常典型,给出的建议也都与实践紧密结合。书中的每一条建议都可能在你的下一行代码、下一个应用或下一个项目中崭露头角,建议你将此书搁置在手边,随时查阅,一定能使你的学习和开发工作事半功倍。