《C语言接口与实现:创建可重用软件的技术》,原名《CInterfacesandImplementations:TechniquesforCreatingReusableSoftware》,作者:【美】DavidR.Hanson,翻译:傅蓉周鹏张昆琪权威,出版社:机械工业出版社,ISBN:7111130057,PDF格式,大小10MB。
内容简介:本书概念清晰、内容新颖、实例详尽,是一本有关设计、实现和有效使用c语言库函数,掌握创建可重用c语言软件模块技术的参考指南。
本书倡导基于接口的c语言设计理念及其实现技术,深入详细地描述了24个c语言接口及其实现。
  本书通过叙述如何用一种与语言无关的方法将接口的设计与实现独立开来,从而形成一种基于接口的设计途径来创建可重用的api,本书是一本针对c语言程序员的不可多得的好书,也是值得所有希望掌握可重用软件模块技术的读者阅读的参考书籍。
  关于如何设计、实现和有效使用库函数的指南少之又少(如果说还有的话)。
这本力作填补了这个空白。
它可以作为下一代软件的工具书.所有的c语言程序员都应该阅读。
  ——w.richardstevens  “我向每位专业c语言程序员推荐这本书。
c语言程序员们忽视书中所描述的各种技术已经太长时间了。
”  ——normanramsey,贝尔实验室研究员每一位程序员和软件项目经理必须掌握创建可重用软件模块的技术:可重用软件模块是构建大规模、可靠应用的基石。
与当前某些面向对象语言不同,c语言为创建可重用应用程序接口(applicationprogramminginterface,api)提供的语言和功能支持非常少。
尽管大多数c语言程序员在自己所编写的每一个应用程序中都使用api和实现api的库.但只有相当少的程序员可以创建和发布新的、可广泛使用的api。
本书阐述了如何用一种与语言无关的方法将接口的设计与实现独立开来,从而形成一种基于接口的设计途径来创建可重用的api。
书中提供大量实例具体说明这种方法。
作者详细描述了24个接口和它们的实现细节,有助于读者对这种设计方法的透彻理解。
本书具有如下特色:简洁明了的接口描述。
为对接口设计感兴趣的程序员提供了一个参考手册每一章接口的代码实现分析将帮助读者修改、扩充一个接口,或者设计相关接口深入探讨了“算法工程”:阐述如何将数据结构以及相关算法打包到可重用模块中24个api和8个实例程序的源代码都经过测试检查,每个程序都是按照”literate程序”的形式构成。
为源代码提供了全面完整的解释提供了非常少见的有关c语言编程技巧的文档记录可以方便地在http://www.cs.princeton.edu/software/cii/访问本书的所有源码目录:出版者的话专家指导委员会译者序前言第1章简介11.1literate程序21.2编程风格61.3效率7参考书目浅析9练习9第2章接口与实现112.1接口112.2实现132.3抽象数据类型152.4客户调用程序的责任172.5效率21参考书目浅析21练习22第3章原子253.1接口25.3.2实现26参考书目浅析31练习31第4章异常与断言334.1接口344.2实现384.3断言43参考书目浅析46练习46第5章内存管理495.1接口505.2产品级实现535.3校验实现55参考书目浅析62练习62第6章进一步内存管理656.1接口656.2实现67参考书目浅析72练习73第7章链表757.1接口757.2实现78参考书目浅析83练习83第8章表格858.1接口858.2例子:单词频率878.3实现92参考书目浅析98练习98第9章集合1019.1接口1019.2实例:交叉引用列表1039.3实现1099.3.1成员操作1109.3.2集合操作113参考书目浅析116练习116第10章动态数组11910.1接口11910.2实现122参考书目浅析124练习125第11章序列12711.1接口12711.2实现128参考书目浅析133练习133第12章环13512.1接口13512.2实现1
1
本资源是CSAPP配套实验二进制炸弹binarybomb的实验报告。
使用c32asm进行反编译,查看汇编代码比较方便编译调试工具使用gdb,常用命令:disassemb查看当前函数的汇编代码x/0x4061a2查看内存b函数名在函数开始处设置断点b*0x401233在一条指令处设置断点ir寄存器名查看寄存器的值
2023/7/12 9:10:21 404KB csapp binarybomb 二进制炸弹
1
占用内存最小的PDF阅读器SumatraPDF,只有4.49M哦!最关键的是免费的!
1
应用MFC使用内存双缓冲实现实时曲线无闪烁显示,选中曲线可进行缩放
2023/7/7 0:23:31 28.47MB MFC 实时曲线 无闪烁显示
1
这份白皮书分两部分发布。
你现在读的第一部分是关于当前关于内存干扰检测和恢复的技术。
首先介绍了“不受干扰”的概念。
随后阐述了在避免多核架构所带来的内存干扰方面的新挑战。
第一部分以ISO26262中的内存干扰预防和恢复指南的详细介绍结束,并解释指南如何影响今天汽车微控制器和操作系统中实施的安全机制。
2023/7/6 6:12:46 1.3MB Aurix 内存干扰 安全机制
1
MMTools控件的demo例子,包含从TMemoryStream内存流,资源中加载mp3。
具体例子在\mpeg\memstream中
2023/7/5 8:51:07 1.91MB TMemoryStrea 资源中mp3 流播放mp3
1
C#读取XML文件并写入数据库的三种方法,直接写入和先读取到内存再写入数据库
2023/7/4 20:19:10 59KB XML C# asp.net
1
让你轻松学会找代码,360提示风险,属于误报,你懂得额
2023/7/3 10:55:47 1.55MB 小烦内存搜索
1
VS2010用CxImage读入各种图片格式后在内存中转换为HBITMAP位图Demo
2023/7/3 8:31:33 5.7MB C++;CxImage
1
Uber的早期架构由一个单体后端应用程序构成,该应用由Python编写,Python使用Postgres以实现数据持久化。
自那时起,Uber架构已发生巨变,逐步转化为微服务模式和新的数据平台。
特别是在之前一些使用Postgres的案例中,现在则改用Schemaless(一个基于MySQL的全新数据库分片)。
本文将探索Postgres的缺陷,解释迁移到MySQL的基础上构建Schemaless和其它后端服务的原因。
Postgres有很多局限性:写入架构低效数据复制低效表损坏的问题糟糕的从库MVCC支持新版本更新难度升级下文将分析Postgres的表表示法和磁盘上的索引数据,重点对比MySQL通过
1
共 1000 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡