图书介绍
C大学教程 英文版2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

- P.J.戴特尔,H.M.戴特尔著 著
- 出版社: 北京:电子工业出版社
- ISBN:9787121106200
- 出版时间:2010
- 标注页数:896页
- 文件大小:119MB
- 文件页数:40320912页
- 主题词:C语言-程序设计-高等学校-教材-英文
PDF下载
下载说明
C大学教程 英文版PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
Chapter 1 Introduction to Computers,the Internet and the Web1
1.1 Introduction2
1.2 What Is a Computer?3
1.3 Computer Organization3
1.4 Early Operating Systems4
1.5 Personal,Distributed and Client/Server Computing4
1.6 Machine Languages,Assembly Languages and High-Level Languages5
1.7 Fortran,COBOL,Pascal and Ada6
1.8 History of C6
1.9 C Standard Library7
1.10 C++8
1.11 Java8
1.12 BASIC,Visual Basic,Visual C++,Visual C# and.NET9
1.13 Key Software Trend: Object Technology9
1.14 Typical C Program Development Environment10
1.15 Hardware Trends12
1.16 History of the Internet12
1.17 History of the World Wide Web13
1.18 Notes About C and This Book13
1.19 Web Resources14
Chapter 2 Introduction to C Programming25
2.1 Introduction25
2.2 A Simple C Program: Printing a Line of Text26
2.3 Another Simple C Program: Adding Two Integers29
2.4 Memory Concepts32
2.5 Arithmetic in C33
2.6 Decision Making: Equality and Relational Operators35
Chapter 3 Structured Program Development in C48
3.1 Introduction48
3.2 Algorithms49
3.3 Pseudocode49
3.4 Control Structures50
3.5 The if Selection Statement51
3.6 The if…else Selection Statement52
3.7 The while Repetition Statement55
3.8 Formulating Algorithms Case Study 1: Counter-Controlled Repetition56
3.9 Formulating Algorithms with Top-Down,Stepwise Refinement Case Study 2:Sentinel-Controlled Repetition57
3.10 Formulating Algorithms with Top-Down, Stepwise Refinement Case Study 3: Nested Control Structures62
3.11 Assignment Operators65
3.12 Increment and Decrement Operators65
Chapter 4 C Program Control82
4.1 Introduction83
4.2 Repetition Essentials83
4.3 Counter-Controlled Repetition83
4.4 f o r Repetition Statement85
4.5 for Statement: Notes and Observations86
4.6 Examples Using the for Statement87
4.7 switch Multiple-Selection Statement90
4.8 do…while Repetition Statement94
4.9 break and continue Statements95
4.10 Logical Operators97
4.11 Confusing Equality(==) and Assignment(=) Operators99
4.12 Structured Programming Summary100
Chapter 5 C Functions115
5.1 Introduction116
5.2 Program Modules in C116
5.3 Math Library Functions117
5.4 Functions118
5.5 Function Definitions118
5.6 Function Prototypes121
5.7 Function Call Stack and Activation Records123
5.8 Headers123
5.9 Calling Functions: Call-by-Value and Call-by-Reference124
5.10 Random Number Generation124
5.11 Example: A Game of Chance128
5.12 Storage Classes131
5.13 Scope Rules132
5.14 Recursion135
5.15 Example Using Recursion: Fibonacci Series137
5.16 Recursion vs.Iteration140
Chapter 6 C Arrays156
6.1 Introduction156
6.2 Arrays157
6.3 Defining Arrays158
6.4 Array Examples158
6.5 Passing Arrays to Functions168
6.6 Sorting Arrays171
6.7 Case Study: Computing Mean, Median and Mode Using Arrays173
6.8 Searching Arrays176
6.9 Multiple-Subscripted Arrays180
Chapter 7 C Pointers200
7.1 Introduction200
7.2 Pointer Variable Definitions and Initialization201
7.3 Pointer Operators201
7.4 Passing Arguments to Functions by Reference203
7.5 Using the const Qualifier with Pointers206
7.6 Bubble Sort Using Call-by-Reference210
7.7 sizeof Operator213
7.8 Pointer Expressions and Pointer Arithmetic214
7.9 Relationship between Pointers and Arrays216
7.10 Arrays of Pointers219
7.11 Case Study: Card Shuffiing and Dealing Simulation220
7.12 Pointers to Functions224
Chapter 8 C Characters and Strings243
8.1 Introduction244
8.2 Fundamentals of Strings and Characters244
8.3 Character-Handling Library245
8.4 String-Conversion Functions249
8.5 Standard Input/Output Library Functions252
8.6 String-Manipulation Functions of the String- Handling Library255
8.7 Comparison Functions of the String-Handling Library257
8.8 Search Functions of the String-Handling Library258
8.9 Memory Functions of the String-Handling Library262
8.10 Other Functions of the String-Handling Library265
Chapter 9 C Formatted Input/Output277
9.1 Introduction277
9.2 Streams278
9.3 Formatting Output with printf278
9.4 Printing Integers278
9.5 Printing Floating-Point Numbers279
9.6 Printing Strings and Characters281
9.7 Other Conversion Specifiers281
9.8 Printing with Field Widths and Precision282
9.9 Using Flags in the printf Format Control String284
9.10 Printing Literals and Escape Sequences286
9.11 Reading Formatted Input with scanf287
Chapter 10 C Structures, Unions, Bit Manipulations and Enumerations298
10.1 Introduction298
10.2 Structure Definitions299
10.3 Initializing Structures301
10.4 Accessing Members of Structures301
10.5 Using Structures with Functions302
10.6 typedef302
10.7 Example:High-Performance Card Shuffling and Dealing Simulation303
10.8 Unions305
10.9 Bitwise Operators307
10.10 Bit Fields313
10.11 Enumeration Constants315
Chapter 11 C File Processing325
11.1 Introduction325
11.2 Data Hierarchy326
11.3 Files and Streams327
11.4 Creating a Sequential-Access File327
11.5 Reading Data from a Sequential-Access File331
11.6 Random-Access Files335
11.7 Creating a Random-Access File335
11.8 Writing Data Randomly to a Random-Access File337
11.9 Reading Data from a Random-Access File339
11.10 Case Study: Transaction-Processing Program340
Chapter 12 C Data Structures353
12.1 Introduction353
12.2 Self-Referential Structures354
12.3 Dynamic Memory Allocation355
12.4 Linked Lists355
12.5 Stacks362
12.6 Queues366
12.7 Trees370
Chapter 13 C Preprocessor394
13.1 Introduction394
13.2 # include Preprocessor Directive395
13.3 #define Preprocessor Directive: Symbolic Constants395
13.4 #define Preprocessor Directive: Macros395
13.5 Conditional Compilation397
13.6 #error and #pragma Preprocessor Directives398
13.7 # and # # Operators398
13.8 Line Numbers398
13.9 Predefined Symbolic Constants399
13.10 Assertions399
Chapter 14 Other C Topics403
14.1 Introduction403
14.2 Redirecting Input/Output on Linux/UNIX and Windows Systems404
14.3 Variable-Length Argument Lists404
14.4 Using Command-Line Arguments406
14.5 Notes on Compiling Multiple-Source-File Programs407
14.6 Program Termination with exit and atexit408
14.7 volatile Type Qualifier409
14.8 Suffixes for Integer and Floating-Point Constants409
14.9 More on Files410
14.10 Signal Handling411
14.11 Dynamic Memory Allocation: Functions calloc and realloc413
14.12 Unconditional Branching with goto413
Chapter 15 Game Programming with the Allegro C Library419
15.1 Introduction420
15.2 Installing Allegro420
15.3 A Simple Allegro Program420
15.4 Simple Graphics: Importing Bitmaps and Blitting421
15.5 Animation with Double Buffering424
15.6 Importing and Playing Sounds429
15.7 Keyboard Input432
15.8 Fonts and Displaying Text436
15.9 Implementing the Game of Pong439
15.10 Timers in Allegro444
15.11 The Grabber and Allegro Datafiles447
15.12 Other Allegro Capabilities453
15.13 Allegro Internet and Web Resources454
Chapter 16 Sorting: A Deeper Look460
16.1 Introduction460
16.2 Big O Notation461
16.3 Selection Sort461
16.4 Insertion Sort464
16.5 Merge Sort466
Chapter 17 Introduction to C99474
17.1 Introduction475
17.2 Support for C99475
17.3 New C99 Headers476
17.4 // Comments476
17.5 Mixing Declarations and Executable Code476
17.6 Declaring a Variable in a for Statement Header477
17.7 Designated Initializers and Compound Literals478
17.8 Type bool480
17.9 Implicit in t in Function Declarations481
17.10 Complex Numbers482
17.11 Variable-Length Arrays483
17.12 Other C99 Features484
17.13 Internet and Web Resources486
Chapter 18 C++ as a Better C; Introducing Object Technology490
18.1 Introduction491
18.2 C++491
18.3 A Simple Program: Adding Two Integers491
18.4 C++ Standard Library493
18.5 Header Files494
18.6 Inline Functions495
18.7 References and Reference Parameters496
18.8 Empty Parameter Lists500
18.9 Default Arguments500
18.10 Unary Scope Resolution Operator501
18.11 Function Overloading502
18.12 Function Templates505
18.13 Introduction to Object Technology and the UML507
18.14 Wrap-Up510
Chapter 19 Introduction to Classes and Objects516
19.1 Introduction517
19.2 Classes, Objects, Member Functions and Data Members517
19.3 Overview of the Chapter Examples518
19.4 Defining a Class with a Member Function518
19.5 Defining a Member Function with a Parameter521
19.6 Data Members, set Functions and get Functions523
19.7 Initializing Objects with Constructors528
19.8 Placing a Class in a Separate File for Reusability531
19.9 Separating Interface from Implementation534
19.10 Validating Data with set Functions538
19.11 Wrap-Up542
Chapter 20 Classes: A Deeper Look, Part 1548
20.1 Introduction549
20.2 Time Class Case Study549
20.3 Class Scope and Accessing Class Members554
20.4 Separating Interface from Implementation555
20.5 Access Functions and Utility Functions556
20.6 Time Class Case Study: Constructors with Default Arguments558
20.7 Destructors562
20.8 When Constructors and Destructors Are Called562
20.9 Time Class Case Study: A Subtle Trap—Returning a Reference to a private Data Member565
20.10 Default Memberwise Assignment567
20.11 Software Reusability568
20.12 Wrap-Up569
Chapter 21 Classes: A Deeper Look, Part 2574
21.1 Introduction575
21.2 const (Constant) Objects and const Member Functions575
21.3 Composition: Objects as Members of Classes582
21.4 friend Functions and friend Classes587
21.5 Using the this Pointer589
21.6 Dynamic Memory Management with Operators new and delete593
21.7 static Class Members594
21.8 Data Abstraction and Information Hiding599
21.8.1 Example: Array Abstract Data Type600
21.8.2 Example: String Abstract Data Type600
21.8.3 Example: Queue Abstract Data Type600
21.9 Container Classes and Iterators601
21.10 Proxy Classes601
21.11 Wrap-Up603
Chapter 22 Operator Overloading609
22.1 Introduction610
22.2 Fundamentals of Operator Overloading610
22.3 Restrictions on Operator Overloading611
22.4 Operator Functions as Class Members vs…Global Functions612
22.5 Overloading Stream Insertion and Stream Extraction Operators613
22.6 Overloading Unary Operators616
22.7 Overloading Binary Operators616
22.8 Case Study: Array Class617
22.9 Converting between Types625
22.10 Overloading ++ and —626
22.11 explicit Constructors627
22.12 Wrap-Up630
Chapter 23 Object-Oriented Programming:Inheritance639
23.1 Introduction640
23.2 Base Classes and Derived Classes641
23.3 protected Members642
23.4 Relationship between Base Classes and Derived Classes643
23.4.1 Creating and Using a CommissionEmployee Class643
23.4.2 Creating a Base PlusCommissionEmployee Class Without Using Inheritance647
23.4.3 Creating a CommissionEmployee-BasePlusCommissionEmployee Inheritance Hierarchy651
23.4.4 CommissionEmployee-BasePlusCommissionEmployee Inheritance Hierarchy Using protected Data654
23.4.5 CommissionEmployee-BasePlusCommissionEmployee Inheritance Hierarchy Using private Data659
23.5 Constructors and Destructors in Derived Classes665
23.6 public, protected and private Inheritance670
23.7 Software Engineering with Inheritance671
23.8 Wrap-Up672
Chapter 24 Object-Oriented Programming: Polymorphism677
24.1 Introduction678
24.2 Polymorphism Examples679
24.3 Relationships Among Objects in an Inheritance Hierarchy680
24.3.1 Invoking Base-Class Functions from Derived-Class Objects680
24.3.2 Aiming Derived-Class Pointers at Base-Class Objects685
24.3.3 Derived-Class Member-Function Calls via Base-Class Pointers686
24.3.4 Virtual Functions688
24.3.5 Summary of the Allowed Assignments Between Base-Class and Derived-Class Objects and Pointers692
24.4 Type Fields and switch Statements692
24.5 Abstract Classes and Pure virtual Functions693
24.6 Case Study: Payroll System Using Polymorphism695
24.6.1 Creating Abstract Base Class Employee695
24.6.2 Creating Concrete Derived Class SalariedEmployee698
24.6.3 Creating Concrete Derived Class HourlyEmployee699
24.6.4 Creating Concrete Derived Class CommissionEmployee701
24.6.5 Creating Indirect Concrete Derived Class Base Plus CommissionEmployee702
24.6.6 Demonstrating Polymorphic Processing704
24.7 (Optional) Polymorphism, Virtual Functions and Dynamic Binding “Under the Hood”707
24.8 Case Study: Payroll System Using Polymorphism and Runtime Tpe Information with Downcasting,dynamic_cast, typeid and type_info710
24.9 Virtual Destructors712
24.10 Wrap-Up713
Chapter 25 Templates718
25.1 Introduction718
25.2 Function Templates719
25.3 Overloading Function Templates721
25.4 Class Templates722
25.5 Nontype Parameters and Default Types for Class Templates726
25.6 Notes on Templates and Inheritance727
25.7 Notes on Templates and Friends728
25.8 Notes on Templates and static Members728
25.9 Wrap-Up729
Chapter 26 Stream Input/Output733
26.1 Introduction734
26.2 Streams734
26.2.1 Classic Streams vs.Standard Streams735
26.2.2 iostream Library Header Files735
26.2.3 Stream Input/Output Classes and Objects735
26.3 Stream Output737
26.3.1 Output of char * Variables737
26.3.2 Character Output Using Member Function put738
26.4 Stream Input738
26.4.1 get and getline Member Functions739
26.4.2 istream Member Functions peek, putback and ignore741
26.4.3 Type-Safe I/O741
26.5 Unformatted I/O Using read, write and gcount741
26.6 Introduction to Stream Manipulators742
26.6.1 Integral Stream Base: dec, oct, hex and setbase742
26.6.2 Floating-Point Precision (precision, setprecision)743
26.6.3 FieldWidth (width, setw)744
26.6.4 User-Defined Output Stream Manipulators745
26.7 Stream Format States and Stream Manipulators746
26.7.1 Trailing Zeros and Decimal Points (showpoint)746
26.7.2 Justification (left, right and internal)747
26.7.3 Padding (fill, setfill)748
26.7.4 Integral Stream Base (dec, oct, hex, showbase)749
26.7.5 Floating-Point Numbers; Scientific and Fixed Notation (scientific, fixed)750
26.7.6 Uppercase/Lowercase Control (uppercase)751
26.7.7 Specifying Boolean Format (boo la lpha)751
26.7.8 Setting and Resetting the Format State via Member Function flags752
26.8 Stream Error States753
26.9 Tying an Output Stream to an Input Stream754
26.10 Wrap-Up755
Chapter 27 Exception Handling764
27.1 Introduction765
27.2 Exception-Handling Overview765
27.3 Example: Handling an Attempt to Divide by Zero766
27.4 When to Use Exception Handling770
27.5 Rethrowing an Exception771
27.6 Exception Specifications772
27.7 Processing Unexpected Exceptions773
27.8 Stack Unwinding773
27.9 Constructors, Destructors and Exception Handling774
27.10 Exceptions and Inheritance775
27.11 Processing new Failures775
27.12 Class auto ptr and Dynamic Memory Allocation778
27.13 Standard Library Exception Hierarchy780
27.14 Other Error-Handling Techniques781
27.15 Wrap-Up782
Appendix A Internet and Web Resources788
A.1 Free C/C++ Compilers and Development Tools788
A.2 C Resource Sites789
A.3 C99789
A.4 C Projects, Freeware and Shareware790
A.5 C Source Code790
A.6 C Articles and Whitepapers791
A.7 C Tutorials and Webcasts791
A.8 GNOME and GLib792
A.9 SWIG793
A.10 Objective-C793
A.11 C Sample Chapters and eBooks794
A.12 C Wikis794
A.13 C FAQs794
A.14 C Newsgroups795
A.15 C Blogs795
A.16 C Downloads from Download…com795
A.17 C Game Programming795
A.18 Allegro Game Programming Resources796
A.19 Jobs for C Programmers797
A.20 Deitel C Training798
Appendix B Operator Precedence Charts799
Appendix C ASCII Character Set801
Appendix D Number Systems802
D.1 Introduction802
D.2 Abbreviating Binary Numbers as Octal and Hexadecimal Numbers804
D.3 Converting Octal and Hexadecimal Numbers to Binary Numbers805
D.4 Converting from Binary, Octal or Hexadecimal to Decimal805
D.5 Converting from Decimal to Binary, Octal or Hexadecimal806
D.6 Negative Binary Numbers: Two’s Complement Notation807
Appendix E Game Programming: Solving Sudoku812
E.1 Introduction812
E.2 Deitel Sudoku Resource Center812
E.3 Solution Strategies813
E.4 Programming Sudoku Puzzle Solvers816
E.5 Generating New Sudoku Puzzles816
E.6 Conclusion818
Index819
热门推荐
- 450083.html
- 1107033.html
- 310759.html
- 2935489.html
- 3545737.html
- 1955063.html
- 593105.html
- 1599974.html
- 7356.html
- 2283339.html
- http://www.ickdjs.cc/book_3478401.html
- http://www.ickdjs.cc/book_2789441.html
- http://www.ickdjs.cc/book_2040496.html
- http://www.ickdjs.cc/book_385963.html
- http://www.ickdjs.cc/book_1759850.html
- http://www.ickdjs.cc/book_1318953.html
- http://www.ickdjs.cc/book_2782050.html
- http://www.ickdjs.cc/book_3069535.html
- http://www.ickdjs.cc/book_1220722.html
- http://www.ickdjs.cc/book_3304251.html