Software Engineering in C - Peter A. Darnell, Philip E. Margolis

Software Engineering in C

Buch | Softcover
612 Seiten
1990
Springer-Verlag New York Inc.
978-0-387-96574-1 (ISBN)
53,49 inkl. MwSt
zur Neuauflage
  • Titel erscheint in neuer Auflage
  • Artikel merken
Zu diesem Artikel existiert eine Nachauflage
The author starts with the premise that C is an excellentlanguage for software engineering projects. The book con-centrates on programming style,particularly readability,maintainability, and portability.This book is designed as a text for both beginner and inter-mediate-level programmers.
The author starts with the premise that C is an excellent
language for software engineering projects. The book con-
centrates on programming style,particularly readability,
maintainability, and portability. Documents the proposed
ANSI Standard, which is expected to be ratified in 1987.
This book is designed as a text for both beginner and inter-
mediate-level programmers.

1 Introduction To Programming.- 1.1 High-Level Programming Languages.- 1.2 History of C.- 1.3 ANSI Standard.- 1.4 Nature of C.- 2 C Essentials.- 2.1 Program Development.- 2.2 Functions.- 2.3 Anatomy of a C Function.- 2.4 Formatting Source Files.- 2.5 The main() Function.- 2.6 The printf() Function.- 2.7 The scanf() Function.- 2.8 The Preprocessor.- Exercises.- 3 Scalar Data Types.- 3.1 Declarations.- 3.2 Different Types of Integers.- 3.3 Different Kinds of Integer Constants.- 3.4 Floating-Point Types.- 3.5 Initialization.- 3.6 Finding the Address of an Object.- 3.7 Introduction to Pointers.- 3.8 Typedefs.- 3.9 Mixing Types.- 3.10 Explicit Conversions — Casts.- 3.11 Enumeration Types.- 3.12 The void Data Type.- Exercises.- 4 Control Flow.- 4.1 Conditional Branching.- 4.2 The switch Statement.- 4.3 Looping.- 4.4 Nested Loops.- 4.5 A Simple Calculator Program.- 4.6 The break and continue Statements.- 4.7 The goto Statement.- 4.8 Infinite Loops.- Exercises.- 5 Operators and Expressions.- 5.1 Precedence and Associativity.- 5.2 Unary Minus Operator.- 5.3 Binary Arithmetic Operators.- 5.4 Arithmetic Assignment Operators.- 5.5 Increment and Decrement Operators.- 5.6 Comma Operator.- 5.7 Relational Operators.- 5.8 Logical Operators.- 5.9 Bit-Manipulation Operators.- 5.10 Bitwise Assignment Operators.- 5.11 Cast Operator.- 5.12 sizeof operator.- 5.13 Conditional Operator (? :).- 5.14 Memory Operators.- Exercises.- 6 Arrays and Pointers.- 6.1 Declaring an Array.- 6.2 How Arrays Are Stored in Memory.- 6.3 Initializing Arrays.- 6.4 Array Example: Encryption and Decryption.- 6.5 Pointer Arithmetic.- 6.6 Passing Pointers as Function Arguments.- 6.7 Accessing Array Elements Through Pointers.- 6.8 Passing Arrays as Function Arguments.- 6.9 Sorting Algorithms.- 6.10 Strings.- 6.11Multidimensional Arrays.- 6.12 Arrays of Pointers.- 6.13 Pointers to Pointers.- Exercises.- 7 Storage Classes.- 7.1 Fixed vs. Automatic Duration.- 7.2 Scope.- 7.3 Global Variables.- 7.4 The register Specifier.- 7.5 Summary of Storage Classes.- 7.6 Dynamic Memory Allocation.- Exercises.- 8 Structures and Unions.- 8.1 Structures.- 8.2 Linked Lists.- 8.3 Unions.- 8.4 enum Declarations.- Exercises.- 9 Functions.- 9.1 Passing Arguments.- 9.2 Declarations and Calls.- 9.3 Pointers to Functions.- 9.4 Recursion.- 9.5 The main() Function.- 9.6 Complex Declarations.- Exercises.- 10 The C Preprocessor.- 10.1 Macro Substitution.- 10.2 Conditional Compilation.- 10.3 Include Facility.- 10.4 Line Control.- Exercises.- 11 Input and Output.- 11.1 Streams.- 11.2 Buffering.- 11.3 The Header File.- 11.4 Error Handling.- 11.5 Opening and Closing a File.- 11.6 Reading and Writing Data.- 11.7 Selecting an I/O Method.- 11.8 Unbuffered I/O.- 11.9 Random Access.- Exercises.- 12 Software Engineering.- 12.1 Product Specification.- 12.2 Software Design.- 12.3 Project Management and Cost Estimation.- 12.4 Software Tools for Software Production.- 12.5 Debugging.- 12.6 Testing.- 12.7 Performance Analysis.- 12.8 Documentation.- Exercises.- Appendix A The ANSI Runtime Library.- A.1 Function Names.- A.2 Header Files.- A.3 Synopses.- A.4 Functions vs. Macros.- A.5 Error Handling.- A.6 Diagnostics.- A.7 Character Handling.- A.8 Setting Locale Parameters.- A.9 Mathematics.- A.10 Non-Local 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 Date and Time Functions.- Appendix B Syntax of ANSI C.- Appendix C Implementation Limits.- C.1 Translation Limits.- C.2 Numerical Limits.- Appendix D Differences Between the ANSI and K&R Standards.- D.1 Source Translation Differences.- D.2 Data Type Differences.- D.3 Statement Differences.- D.4 Expression Differences.- D.5 Storage Class and Initialization Differences.- D.6 Preprocessor Differences.- Appendix E Reserved Names.- Appendix F C Interpreter Listing.- Appendix G ASCII Codes.

Erscheint lt. Verlag 4.9.1990
Reihe/Serie Springer Books on Professional Computing
Zusatzinfo XX, 612 p.
Verlagsort New York, NY
Sprache englisch
Maße 155 x 235 mm
Themenwelt Mathematik / Informatik Informatik Programmiersprachen / -werkzeuge
Mathematik / Informatik Informatik Software Entwicklung
Informatik Theorie / Studium Compilerbau
ISBN-10 0-387-96574-2 / 0387965742
ISBN-13 978-0-387-96574-1 / 9780387965741
Zustand Neuware
Haben Sie eine Frage zum Produkt?
Mehr entdecken
aus dem Bereich
Grundlagen und Anwendungen

von Hanspeter Mössenböck

Buch | Softcover (2024)
dpunkt (Verlag)
29,90
a beginner's guide to learning llvm compiler tools and core …

von Kai Nacke

Buch | Softcover (2024)
Packt Publishing Limited (Verlag)
47,35