C语言接口与实现

C语言接口与实现 pdf epub mobi txt 电子书 下载 2025

出版者:人民邮电出版社
作者:(美)David R. Hanson
出品人:图灵教育
页数:519
译者:
出版时间:2010-8
价格:79.00元
装帧:
isbn号码:9787115231130
丛书系列:图灵程序设计丛书·C/C++系列
图书标签:
  • C
  • 编程
  • C/C++
  • Programming
  • C语言
  • 计算机
  • 程序设计
  • 计算机科学
  • C语言
  • 编程
  • 接口
  • 实现
  • 计算机
  • 软件
  • 开发
  • 基础
  • 算法
  • 结构
想要找书就要到 小美书屋
立刻按 ctrl+D收藏本页
你会得到大惊喜!!

具体描述

可重用的软件模块是构建大规模可靠应用程序的基石,创建可重用的软件模块是每个程序员和项目经理必须掌握的技能。C语言对创建可重用的API提供的语言和功能支持非常少,虽然C程序员写应用时都会用到API和库,但却很少有人去创建和发布新的能广泛应用的API。本书介绍用一种基于接口的设计方法创建可重用的API,这一方法将接口与实现分离开来,且与语言无关。书中详细描述了24个接口及其实现,便于读者深入了解此方法。这些接口涉及很多计算机领域的知识,包括数据结构、算法、字符串处理和并发程序。

本书是C语言领域的的经典名著,出版十余年仍畅销不衰,是几代程序员倍加推崇的力作。

作者简介

David R.Hanson 普林斯顿大学计算机科学系教授,有着二十多年编程语言研究经验。他曾经同贝尔实验室合作开展研究工作,是适用于UNIX系统上的高质量C编译器Icc的开发者之一。另著有A Retargetable C Compiler: Design and Implementation一书。

目录信息

1 Introduction 1
1.1 Literate Programs 2
1.2 Programming Style 8
1.3 Efficiency 11
Further Reading 12
Exercises 13
2 Interfaces and Implementations 15
2.1 Interfaces 15
2.2 Implementations 18
2.3 Abstract Data Types 21
2.4 Client Responsibilities 24
2.5 Efficiency 30
Further Reading 30
Exercises 31
3 Atoms 33
3.1 Interface 33
3.2 Implementation 34
Further Reading 42
4 Exceptions and Assertions 45
4.1 Interface 47
.4.2 Implementation 53
4.3 Assertions 59
Further Reading 63
Exercises 64
5 Memory Management 67
5.1 Interface 69
5.2 Production Implementation 73
5.3 Checking Implementation 76
Further Reading 85
Exercises 86
6 More Memory Management 89
6.1 Interface 90
6.2 Implementation 92
Further Reading 98
Exercises 100
7 Lists 103
7.1 Interface 103
7.2 Implementation 108
Further Reading 113
Exercises 114
8 Tables 115
8.1 Interface 115
8.2 Example: Word Frequencies 118
8.3 Implementation 12 5
Further Reading 132
Exercises 133
9 Sets 137
9.1 Interface 138
9.2 Example: Cross-Reference Listings 140
9.3 Implementation 148
9.3.1 Member Operations 150
9.3.2 Set Operations 154
Further Reading 158
Exercises 158
10 Dynamic Arrays
10.1 Interfaces 162
10.2 Implementation 165
Further Reading 169
Exercises 169
11 Sequences 171
11.1 Interface 171
11.2 Implementation 174
Further Reading 180
Exercises 180
12 Rings 183
12.1 Interface 183
12.2 Implementation 187
Further Reading 196
Exercises 197
13 Bit Vectors 199
13.1 Interface 199
13.2 Implementation 202
13.2.1 Member Operations 204
13.2.2 Comparisons 209
13.2.3 Set Operations 211
Further Reading 213
Exercises 21314 Formatting 215
14.1 Interface 216
14.1.1 Formatting Functions 216
14.1.2 Conversion Functions 219
14.2 Implementation 224
14.2.1 Formatting Functions 225
14.2.2 Conversion Functions 232
Further Reading 238
Exercises 239
15 Low-LevelStrings 241
15.1 Interface 243
15.2 Example: Printing Identifiers 249
15.3 Implementation 251
15.3.1 String Operations 252
15.3.2 Analyzing Strings 258
15.3.3 Conversion Functions 263
Further Reading 264
Exercises 265
16 High-LevelStrings 269
16.1 Interface 269
16.2 Implementation 276
16.2.1 String Operations 281
16.2.2 Memory Management 285
16.2.3 Analyzing Strings 288
16.2.4 Conversion Functions 293
Further Reading 293
Exercises 294
17 Extended-Precision Arithmetic 297
17.1 Interface 297
17.2 Implementation 303
17.2.1 Addition and Subtraction 305
17.2.2 Multiplication 307
17.2.3 Division and Comparison 309
17.2.4 Shifting 315
17.2.5 String Conversions 319
Further Reading 321
Exercises 322
18 Arbitrary-Precision Arithmetic 323
18.1 Interface 323
18.2 Example: A Calculator 327
18.3 Implementation 334
18.3.1 Negation and Multiplication 337
18.3.2 Addition and Subtraction 338
18.3.3 Division 342
18.3.4 Exponentiation 343
18.3.5 Comparisons 346
18.3.6 Convenience Functions 347
18.3.7 Shifting 349
18.3.8 String and Integer Conversions 350
Further Reading 353
Exercises 354
19 Multiple-Precision Arithmetic 357
19.1 Interface 358
19.2 Example: Another Calculator 365
19.3 Implementation 373
19.3.1 Conversions 377
19.3.2 Unsigned Arithmetic 380
19.3.3 Signed Arithmetic 383
19.3.4 Convenience Functions 388
19.3.5 Comparisons and Logical Operations 395
19.3.6 String Conversions 399
Further Reading 402
Exercises 402
20 Threads 405
20.1 Interfaces 408
20.1.1 Threads 409
20.1.2 General Semaphores 413
20.1.3 Synchronous Communication Channels 417
20.2 Examples 418
20.2.1 Sorting Concurrently 418
20.2.2 Critical Regions 423
20.2.3 Generating Primes 426
20.3 Implementations 431
20.3.1 Synchronous Communication Channels 431
20.3.2 Threads 434
20.3.3 Thread Creation and Context-Switching 446
20.3.4 Preemption 454
20.3.5 General Semaphores 457
20.3.6 Context-Switching on the MIPS and ALPHA 459
Further Reading 463
Exercises 465
Interface Summary 469
Bibliography 497
Index 505
· · · · · · (收起)

读后感

评分

我说的“好”,指的是通顺/明白/准确,并不是说有什么文采之类的。 我粗略读过这本书,感觉这书也算翻译得不错了,准确性很好。 前一段看到dang-dang和amazo-n上都有人在恶评这本书,虽然不多,却都很恶毒。 就目前情况来说,翻译得好的书不算多,翻译得不好的书一大堆,对...  

评分

我说的“好”,指的是通顺/明白/准确,并不是说有什么文采之类的。 我粗略读过这本书,感觉这书也算翻译得不错了,准确性很好。 前一段看到dang-dang和amazo-n上都有人在恶评这本书,虽然不多,却都很恶毒。 就目前情况来说,翻译得好的书不算多,翻译得不好的书一大堆,对...  

评分

评分

看到很多媒体上都评论这本书怎么好,怎么好,我读过这本书,却没有感觉到任何令我惊喜的东西,很是失望。 当时我正在思考如何将C运用到实际项目中,而且自己也总结了一些方法,怎么模块化设计,如何借鉴面向对象的思想进行管理,如何接口与实现分开,如何处理错误等等,而且这...

评分

相对于较抽象的主题-“接口”,内容基本上过于丰富了(要建小"类库":))。仅仅需要了解“接口”的话,随便看看开始几章即可,执着于算法的可以从reference去展开... 书中源码的编排方式到时值得商榷的,个人比较不习惯这种先给占位符再随后展开的代码提供方式,未必比直接列出...  

用户评价

评分

此书太棒了!强烈推荐

评分

大一时候看的? 不过跳了好多,当时当成做数据结构入门了,暑假在家时候突然想翻一下,回校后大致过了一遍,有些东西当时看得懂就呵呵了......

评分

The second C book you should read after "The C programming language", maybe better than the first one^^

评分

大一时候看的? 不过跳了好多,当时当成做数据结构入门了,暑假在家时候突然想翻一下,回校后大致过了一遍,有些东西当时看得懂就呵呵了......

评分

异常框架甚是喜欢。

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2025 book.quotespace.org All Rights Reserved. 小美书屋 版权所有