
| ` |
| 周伟明,作者有较丰富的实践经验,曾工作于美国加州的DASCOM Inc公司(现为IBM的全资子公司)和国内某大型电信设备研发公司等各名企业,一直从事网络安全软件、网络服务器软件,机器翻译软件、工作软件、嵌入式系统软件等研发工作,亲自写过的源代码愈40万行。 |
| 1 绪论 1.1 引言 1.2 C语言编程常见问题分析 1.2.1 参数校验问题 1.2.2 return语句的问题 1.2.3 while循环和for循环的问题 1.2.4 if语句的多个判断问题 1.2.5 goto语句问题 1.2.6 switch…case和if…elseif的效率区别 1.3 任意数据类型处理 1.3.1 任意数据类型处理的设计方法 1.3.2 任意数据类型处理的实例 1.3.3 任意数据类型处理的回调函数封装 1.4 多任务介绍 1.4.1 多任务简介 1.4.2 锁的概念 1.4.3 Windows下常用多任务操作函数 1.4.4 Linux/Unix下常用多任务操作函数 1.4.5 VxWorks下常用多任务操作函数 1.4.6 多任务函数的封装 1.5 软件设计简介 1.5.1 软件设计历史简述 1.5.2 微观设计学原理简介 2 数组 2.1 栈 2.1.1 栈的基本概念 2.1.2 栈的编码实现 2.1.3 多任务栈的实现 2.2 队列 2.2.1 队列的基本概念和接口 2.2.2 环形队列(Queue) 2.2.3 STL中的动态队列(STL∷deque) 2.2.4 动态环形队列 2.2.5 各种队列的时间效率测试及分析 2.2.6 各种队列的适用范围 2.2.7 关于时间效率和空间效率的原则 2.3 排序表 2.3.1 排序算法介绍 2.3.2 快速排序算法 2.3.3 排序表的设计 2.3.4 非递归的快速排序算法 2.3.5 快速排序算法的复杂度分析 2.3.6 二分查找算法 2.4 实例:HOOK管理功能的实现 2.4.1 单个函数的HOOK实现 2.4.2 多个函数的HOOK实现 2.4.3 HOOK功能的应用简介 2.4.4 HOOK使用的注意事项 本章小结 习题与思考 3 链表 3.1 单向链表 3.1.1 单向链表的存储表示 3.1.2 单向链表的接口设计 3.1.3 单向链表的基本功能编码实现 3.2 单向链表的逐个节点遍历 3.2.1 单向链表逐个节点遍历基本概念 3.2.2 单向链表逐个节点遍历编码实现 3.3 单向链表的排序 3.3.1 插入排序 3.3.2 归并插入排序 3.3.3 基数排序 3.4 双向链表 3.4.1 双向链表的基本概念 3.4.2 双向链表的设计 3.4.3 双向链表的编码实现 3.5 使用整块内存的链表 3.5.1 整块内存链表的基本概念 3.5.2 整块内存链表的编码实现 3.6 实例:使用链表管理短信息系统的CACHE 3.6.1 短信息系统的CACHE管理基本概念 3.6.2 短信息系统的发送和接收分析 3.6.3 短信息系统CACHE管理的编码实现 本章小结 习题与思考 4 哈希表 5 树 6 复合二叉树 7 图 8 多任务算法 9 内存管理算法 附 参考答案 |
商品评论(0条)