C A Software Engineering Approach
Springer-Verlag New York Inc.
978-0-387-94675-7 (ISBN)
1: Introduction to Programming.- 1.1 High-Level Programming Languages.- 1.2 History of C.- 1.3 ANSI and ISO Standards.- 1.4 Nature of C.- 2: Introduction to Software Engineering.- 2.1 Introduction.- 2.2 Stages of Software Production.- 2.3 Product Specification.- 2.4 Architectural Design.- 2.5 Project Planning.- 2.6 Detailed Design.- 2.7 Coding.- 2.8 Debugging.- 2.9 Testing.- 2.10 Maintenance.- 2.11 The Bridge Metaphor.- 3: C Essentials.- 3.1 Program Development.- 3.2 Functions.- 3.3 Variables and Constants.- 3.4 Names.- 3.5 Expressions.- 3.6 Formatting Source Files.- 3.7 The main() Function.- 3.8 The printf() Function.- 3.9 The scanf() Function.- 3.10 The Preprocessor.- 3.11 Exercises.- 4: Scalar Data Types.- 4.1 Declarations.- 4.2 Different Kinds of Integer Constants.- 4.3 Floating-Point Types.- 4.4 Scientific Notation.- 4.5 Initialization.- 4.6 Mixing Types.- 4.7 Explicit Conversions—Casts.- 4.8 Enumeration Types.- 4.9 The void Data Type.- 4.10 Typedefs.- 4.11 Finding the Address of an Object.- 4.12 Introduction to Pointers.- 4.13 Exercises.- 5: Control Flow.- 5.1 Conditional Branching.- 5.2 The switch Statement.- 5.3 Looping.- 5.4 Nested Loops.- 5.5 A Simple Calculator Program.- 5.6 The break and continue Statements.- 5.7 The goto Statement.- 5.8 Infinite Loops.- 5.9 Exercises.- 6: Operators and Expressions.- 6.1 Precedence and Associativity.- 6.2 Unary Plus and Minus Operators.- 6.3 Binary Arithmetic Operators.- 6.4 Arithmetic Assignment Operators.- 6.5 Increment and Decrement Operators.- 6.6 Comma Operator.- 6.7 Relational Operators.- 6.8 Logical Operators.- 6.9 Bit-Manipulation Operators.- 6.10 Bitwise Assignment Operators.- 6.11 Cast Operator.- 6.12 sizeof Operator.- 6.13 Conditional Operator (?:).- 6.14 Memory Operators.- 6.15 Exercises.- 7: Arrays andPointers.- 7.1 Declaring an Array.- 7.2 How Arrays Are Stored in Memory.- 7.3 Initializing Arrays.- 7.4 Example: Encryption and Decryption.- 7.5 Pointer Arithmetic.- 7.6 Passing Pointers as Function Arguments.- 7.7 Accessing Array Elements Through Pointers.- 7.8 Passing Arrays as Function Arguments.- 7.9 Sorting Algorithms.- 7.10 Strings.- 7.11 Multidimensional Arrays.- 7.12 Arrays of Pointers.- 7.13 Pointers to Pointers.- 7.14 Exercises.- 8: Storage Classes.- 8.1 Fixed vs. Automatic Duration.- 8.2 Scope.- 8.3 Global Variables.- 8.4 The register Specifier.- 8.5 The const Storage-Class Modifier.- 8.6 The volatile Storage-Class Modifier.- 8.7 Summary of Storage Classes.- 8.8 Dynamic Memory Allocation.- 8.9 Exercises.- 9: Structures and Unions.- 9.1 Structures.- 9.2 Linked Lists.- 9.3 Unions.- 9.4 enum Declarations.- 9.5 Exercises.- 10: Functions.- 10.1 Passing Arguments.- 10.2 Declarations and Calls.- 10.3 Pointers to Functions.- 10.4 Recursion.- 10.5 The main() Function.- 10.6 Complex Declarations.- 10.7 Exercises.- 11: The C Preprocessor.- 11.1 Macro Substitution.- 11.2 Conditional Compilation.- 11.3 Include Facility.- 11.4 Line Control.- 11.5 Exercises.- 12: Input and Output.- 12.1 Streams.- 12.2 Buffering.- 12.3 The Header File.- 12.4 Opening and Closing a File.- 12.5 Reading and Writing Data.- 12.6 Selecting an I/O Method.- 12.7 Unbuffered I/O.- 12.8 Random Access.- 12.9 Exercises.- 13: Software Engineering—A Case Study.- 13.1 Style Review.- 13.2 Product Specification.- 13.3 Architectural Design.- 13.4 Project Planning.- 13.5 Detailed Design.- 13.6 Software Tools for Software Production.- 13.7 Documentation.- 13.8 Exercises.- Appendices.- A: The ANSI Runtime Library.- A.1 Function Names.- A.2 Header Files.- A.3 Synopses.- A.4 Functions vs. Macros.- A.5 ErrorHandling.- A.6 Diagnostics.- A.7 Character Handling.- A.8 Setting Locale Parameters.- A.9 Mathematics.- A.10 Nonlocal Jumps.- A.11 Signal Handling.- A.12 Variable Argument Lists.- A.13 I/O Functions.- A.14 General Utilities.- A.15 String-Handling Functions.- A.16 Multibyte Character Functions.- A.17 Date and Time Functions.- B: Implementation Limits.- B.1 Translation Limits.- B.2 Numerical Limits.- C: Differences Between the ANSI and K&R Standards.- C.1 Source Translation Differences.- C.2 Data Type Differences.- C.3 Statement Differences.- C.4 Expression Differences.- C.5 Storage Class and Initialization Differences.- C.6 Preprocessor Differences.- D: Reserved Names.- E: ASCII Codes.
Zusatzinfo | 191 Illustrations, black and white; XXVIII, 498 p. 191 illus. |
---|---|
Verlagsort | New York, NY |
Sprache | englisch |
Maße | 178 x 254 mm |
Themenwelt | Mathematik / Informatik ► Informatik ► Programmiersprachen / -werkzeuge |
Mathematik / Informatik ► Informatik ► Software Entwicklung | |
Informatik ► Theorie / Studium ► Compilerbau | |
ISBN-10 | 0-387-94675-6 / 0387946756 |
ISBN-13 | 978-0-387-94675-7 / 9780387946757 |
Zustand | Neuware |
Haben Sie eine Frage zum Produkt? |
aus dem Bereich