图书介绍

C和指针 英文版2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

C和指针 英文版
  • (美)KennethReek著 著
  • 出版社: 北京:人民邮电出版社
  • ISBN:9787115308498
  • 出版时间:2013
  • 标注页数:618页
  • 文件大小:214MB
  • 文件页数:638页
  • 主题词:C语言-程序设计-英文

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

C和指针 英文版PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

Chapter 1:A Quick Start1

1.1 Introduction1

1.1.1 Spacing and Comments5

1.1.2 Preprocessor Directives6

1.1.3 The Main Function8

1.1.4 The read_column_numbers Function11

1.1.5 The rearrange Function17

1.2 Other Capabilities20

1.3 Compiling21

1.4 Summary21

1.5 Summary of Cautions22

1.6 Summary of Programming Tips22

1.7 Questions23

1.8 Programming Exercises23

Chapter 2:Basic Concepts25

2.1 Environments25

2.1.1 Translation25

2.1.2 Execution28

2.2 Lexical Rules29

2.2.1 Characters29

2.2.2 Comments31

2.2.3 Free Form Source Code32

2.2.4 Identifiers32

2.2.5 Form of a Program33

2.3 Program Style33

2.4 Summary35

2.5 Summary of Cautions36

2.6 Summary of Programming Tips36

2.7 Questions36

2.8 Programming Exercises38

Chapter 3:Data39

3.1 Basic Data Types39

3.1.1 The Integer Family39

3.1.2 Floating-Point Types44

3.1.3 Pointers45

3.2 Basic Declarations47

3.2.1 Initialization48

3.2.2 Declaring Simple Arrays49

3.2.3 Declaring Pointers49

3.2.4 Implicit Declarations51

3.3 Typedef51

3.4 Constants52

3.5 Scope54

3.5.1 Block Scope54

3.5.2 File Scope56

3.5.3 Prototype Scope56

3.5.4 Function Scope56

3.6 Linkage57

3.7 Storage Class59

3.7.1 Initialization60

3.8 The Static Keyword61

3.9 Scope,Linkage,and Storage Class Example62

3.10 Summary64

3.11 Summary of Cautions65

3.12 Summary of Programming Tips65

3.13 Questions66

Chapter 4:Statements71

4.1 Empty Statement71

4.2 Expression Statement72

4.3 Statement Blocks73

4.4 If Statement73

4.5 While Statement75

4.5.1 Break and Continue Statements75

4.5.2 Execution of the While75

4.6 For Statement77

4.6.1 Execution of a For77

4.7 Do Statement79

4.8 Switch Statement80

4.8.1 Break in a Switch81

4.8.2 Defaults82

4.8.3 Execution of the Switch83

4.9 Goto Statement84

4.10 Summary86

4.11 Summary of Cautions87

4.12 Summary of Programming Tips87

4.13 Questions87

4.14 Programming Exercises89

Chapter 5:Operators and Expressions93

5.1 Operators93

5.1.1 Arithmetic93

5.1.2 Shifting94

5.1.3 Bitwise95

5.1.4 Assignment97

5.1.5 Unary100

5.1.6 Relational103

5.1.7 Logical104

5.1.8 Conditional106

5.1.9 Comma107

5.1.10 Subscript,Function Call,and Structure Member108

5.2 Boolean Values109

5.3 L-values and R-values111

5.4 Expression Evaluation112

5.4.1 Implicit Type Conversions112

5.4.2 Arithmetic Conversions113

5.4.3 Properties of Operators113

5.4.4 Precedence and Order of Evaluation115

5.5 Summary119

5.6 Summary of Cautions120

5.7 Summary of Programming Tips121

5.8 Questions121

5.9 Programming Exercises125

Chapter 6:Pointers129

6.1 Memory and Addresses129

6.1.1 Address Versus Contents130

6.2 Values and Their Types131

6.3 Contents of a Pointer Variable132

6.4 Indirection Operator133

6.5 Uninitialized and Illegal Pointers135

6.6 The Null Pointer136

6.7 Pointers,Indirection,and L-values137

6.8 Pointers,Indirection,and Variables138

6.9 Pointer Constants138

6.10 Pointers to Pointers139

6.11 Pointer Expressions141

6.12 Examples148

6.13 Pointer Arithmetic152

6.13.1 Arithmetic Operations153

6.13.2 Relational Operations156

6.14 Summary157

6.15 Summary of Cautions159

6.16 Summary of Programming Tips159

6.17 Questions159

6.18 Programming Exercises162

Chapter 7:Functions165

7.1 Function Definition165

7.1.1 Return Statement167

7.2 Function Declaration168

7.2.1 Prototypes168

7.2.2 Default Function Assumptions171

7.3 Function Arguments172

7.4 ADTs and Black Boxes176

7.5 Recursion179

7.5.1 Tracing a Recursive Function181

7.5.2 Recursion versus Iteration185

7.6 Variable Argument Lists189

7.6.1 The stdarg Macros190

7.6.2 Limitations of Variable Arguments190

7.7 Summary192

7.8 Summary of Cautions194

7.9 Summary of Programming Tips194

7.10 Questions194

7.11 Programming Exercises195

Chapter 8:Arrays197

8.1 One-Dimensional Arrays197

8.1.1 Array Names197

8.1.2 Subscripts199

8.1.3 Pointers versus Subscripts202

8.1.4 Pointer Efficiency203

8.1.5 Arrays and Pointers210

8.1.6 Array Names as Function Arguments210

8.1.7 Declaring Array Parameters212

8.1.8 Initialization213

8.1.9 Incomplete Initialization214

8.1.10 Automatic Array Sizing214

8.1.11 Character Array Initialization215

8.2 Multidimensional Arrays215

8.2.1 Storage Order216

8.2.2 Array Names218

8.2.3 Subscripts218

8.2.4 Pointers to Arrays221

8.2.5 Multidimensional Arrays as Function Arguments223

8.2.6 Initialization224

8.2.7 Automatic Array Sizing227

8.3 Arrays of Pointers227

8.4 Summary231

8.5 Summary of Cautions232

8.6 Summary of Programming Tips232

8.7 Questions233

8.8 Programming Exercises237

Chapter 9:Strings,Characters,and Bytes243

9.1 String Basics243

9.2 String Length244

9.3 Unrestricted String Functions245

9.3.1 Copying Strings245

9.3.2 Concatenating Strings246

9.3.3 Function Return Value247

9.3.4 String Comparisons247

9.4 Length-Restricted String Functions248

9.5 Basic String Searching250

9.5.1 Finding a Character250

9.5.2 Finding Any of Several Characters250

9.5.3 Finding a Substring251

9.6 Advanced String Searching251

9.6.1 Finding String Prefixes251

9.6.2 Finding Tokens253

9.7 Error Messages255

9.8 Character Operations255

9.8.1 Character Classification255

9.8.2 Character Transformation256

9.9 Memory Operations257

9.10 Summary258

9.11 Summary of Cautions260

9.12 Summary of Programming Tips260

9.13 Questions261

9.14 Programming Exercises262

Chapter 10:Structures and Unions269

10.1 Structure Basics269

10.1.1 Structure Declarations270

10.1.2 Structure Members272

10.1.3 Direct Member Access272

10.1.4 Indirect Member Access273

10.1.5 Self-Referential Structures274

10.1.6 Incomplete Declarations275

10.1.7 Initializing Structures276

10.2 Structures,Pointers,and Members276

10.2.1 Accessing the Pointer277

10.2.2 Accessing the Structure278

10.2.3 Accessing Structure Members279

10.2.4 Accessing a Nested Structure281

10.2.5 Accessing a Pointer Member282

10.3 Structure Storage Allocation283

10.4 Structures as Function Arguments285

10.5 Bit Fields288

10.6 Unions291

10.6.1 Variant Records293

10.6.2 Initializing Unions294

10.7 Summary295

10.8 Summary of Cautions296

10.9 Summary of Programming Tips296

10.10 Questions296

10.11 Programming Exercises300

Chapter 11:Dynamic Memory Allocation303

11.1 Why Use Dynamic Allocation303

11.2 Malloc and Free304

11.3 Calloc and Realloc305

11.4 Using Dynamically Allocated Memory306

11.5 Common Dynamic Memory Errors307

11.5.1 Memory Leaks309

11.6 Memory Allocation Examples310

11.7 Summary317

11.8 Summary of Cautions318

11.9 Summary of Programming Tips318

11.10 Questions318

11.11 Programming Exercises319

Chapter 12:Using Structures and Pointers321

12.1 Linked Lists321

12.2 Singly Linked Lists321

12.2.1 Inserting into a Singly Linked List322

12.2.2 Other List Operations334

12.3 Doubly Linked Lists334

12.3.1 Inserting into a Doubly Linked List335

12.3.2 Other List Operations345

12.4 Summary345

12.5 Summary of Cautions346

12.6 Summary of Programming Tips346

12.7 Questions346

12.8 Programming Exercises347

Chapter 13:Advanced Pointer Topics351

13.1 More Pointers to Pointers351

13.2 Advanced Declarations353

13.3 Pointers to Functions356

13.3.1 Callback Functions357

13.3.2 Jump Tables360

13.4 Command Line Arguments362

13.4.1 Passing Command Line Arguments363

13.4.2 Processing Command Line Arguments365

13.5 String Literals369

13.6 Summary372

13.7 Summary of Cautions373

13.8 Summary of Programming Tips373

13.9 Questions373

13.10 Programming Exercises377

Chapter 14:The Preprocessor383

14.1 Predefined Symbols383

14.2 #define384

14.2.1 Macros385

14.2.2 #define Substitution388

14.2.3 Macros versus Functions389

14.2.4 Macro Arguments with Side Effects390

14.2.5 Naming Conventions391

14.2.6 #undef392

14.2.7 Command Line Definitions393

14.3 Conditional Compilation394

14.3.1 If Defined395

14.3.2 Nested Directives396

14.4 File Inclusion397

14.4.1 Library Includes398

14.4.2 Local Includes398

14.4.3 Nested File Inclusion399

14.5 Other Directives401

14.6 Summary402

14.7 Summary of Cautions403

14.8 Summary of Programming Tips403

14.9 Questions404

14.10 Programming Exercises406

Chapter 15:Input/Output Functions409

15.1 Error Reporting409

15.2 Terminating Execution410

15.3 The Standard I/O Library411

15.4 ANSI I/O Concepts411

15.4.1 Streams412

15.4.2 FILEs413

15.4.3 Standard I/O Constants414

15.5 Overview of Stream I/O415

15.6 Opening Streams416

15.7 Closing Streams418

15.8 Character I/O420

15.8.1 Character I/O Macros421

15.8.2 Undoing Character I/O421

15.9 Unformatted Line I/O423

15.10 Formatted Line I/O425

15.10.1 The scanf Family425

15.10.2 scanf Format Codes426

15.10.3 The printf Family430

15.10.4 printf Format Codes433

15.11 Binary I/O436

15.12 Flushing and Seeking Functions438

15.13 Changing the Buffering440

15.14 Stream Error Functions441

15.15 Temporary Files442

15.16 File Manipulation Functions442

15.17 Summary443

15.18 Summary of Cautions446

15.19 Summary of Programming Tips446

15.20 Questions446

15.21 Programming Exercises448

Chapter 16:Standard Library453

16.1 Integer Functions453

16.1.1 Arithmetic<stdlib.h>453

16.1.2 Random Numbers<stdlib.h>454

16.1.3 String Conversion<stdlib.h>455

16.2 Floating-Point Functions457

16.2.1 Trigonometry<math.h>458

16.2.2 Hyperbolic<math.h>458

16.2.3 Logarithm and Exponent<math.h>458

16.2.4 Floating-Point Representation<math.h>459

16.2.5 Power<math.h>459

16.2.6 Floor,Ceiling,Absolute Value,and Remainder<math.h>460

16.2.7 String Conversion<stdlib.h>460

16.3 Date and Time Functions461

16.3.1 Processor Time<time.h>461

16.3.2 Time of Day<time.h>462

16.4 Nonlocal Jumps<setjmp.h>465

16.4.1 Example466

16.4.2 When to Use Nonlocal Jumps468

16.5 Signals469

16.5.1 Signal Names<signal.h>469

16.5.2 Processing Signals<signal.h>470

16.5.3 Signal Handlers472

16.6 Printing Variable Argument Lists<stdarg.h>474

16.7 Execution Environment474

16.7.1 Terminating Execution<stdlib.h>475

16.7.2 Assertions<assert.h>475

16.7.3 The Environment<stdlib.h>477

16.7.4 Executing System Commands<stdlib.h>477

16.8 Sorting and Searching<stdlib.h>477

16.9 Locales480

16.9.1 Numeric and Monetary Formatting<locale.h>481

16.9.2 Strings and Locales<string.h>484

16.9.3 Effects of Changing the Locale485

16.10 Summary485

16.11 Summary of Cautions487

16.12 Summary of Programming Tips488

16.13 Questions488

16.14 Programming Exercises490

Chapter 17:Classic Abstract Data Types493

17.1 Memory Allocation493

17.2 Stacks494

17.2.1 Stack Interface494

17.2.2 Implementing a Stack494

17.3 Queues505

17.3.1 Queue Interface505

17.3.2 Implementing a Queue507

17.4 Trees512

17.4.1 Insertions into a Binary Search Tree513

17.4.2 Deletions from a Binary Search Tree514

17.4.3 Searching a Binary Search Tree514

17.4.4 Tree Traversals515

17.4.5 Binary Search Tree Interface516

17.4.6 Implementing a Binary Search Tree516

17.5 Improvements in Implementation526

17.5.1 Having More Than One Stack526

17.5.2 Having More Than One Type526

17.5.3 Name Clashes527

17.5.4 Standard Libraries of ADTs528

17.6 Summary531

17.7 Summary of Cautions532

17.8 Summary of Programming Tips533

17.9 Questions533

17.10 Programming Exercises535

Chapter 18:Runtime Environment537

18.1 Determining the Runtime Environment537

18.1.1 Test Program539

18.1.2 Static Variables and Initialization541

18.1.3 The Stack Frame542

18.1.4 Register Variables543

18.1.5 Length of External Identifiers545

18.1.6 Determining the Stack Frame Layout545

18.1.7 Expression Side Effects552

18.2 Interfacing With Assembly Language554

18.3 Runtime Efficiency555

18.3.1 Improving Efficiency556

18.4 Summary559

18.5 Summary of Cautions559

18.6 Summary of Programming Tips560

18.7 Questions560

18.8 Programming Exercises560

Appendix:Selected Problem Solutions561

热门推荐