- STAFF PICKS
- GIFTS + GIFT CARDS
- SELL BOOKS
- FIND A STORE
This item may be
Check for Availability
Practical C++ Programming 1ST Editionby Steve Oualline
Synopses & Reviews
Fast becoming the standard language of commercial software development, C++ is an update of the C programming language, adding object-oriented features that are very helpful for today's larger graphical applications.Practical C++ Programming is a complete introduction to the C++ language for the beginning programmer, and also for C programmers transitioning to C++. Unlike most other C++ books, this book emphasizes a practical, real-world approach, including how to debug, how to make your code understandable to others, and how to understand other people's code.Almost as important, this book is written in the readable style that has made Nutshell Handbooks® famous.Topics covered include:
Unlike most other C++ books, this one emphasizes a practical, real world approach, including how to debug, how to make your code understandable to others, and how to understand other people's codes. Topics covered include good programming sytle, C++ syntax, debugging and optimization and common programming mistakes.
Fast becoming the standard language of commercial software development, C++ is an update of the C programming language, adding object-oriented features that are very helpful for today's larger graphical applications.
Fast becoming the standard language of commercial software development, C++ is an update of the C programming language, adding object-oriented features that are very helpful for today's larger graphical applications."Practical C++ Programming is a complete introduction to the C++language for the beginning programmer, and also for C programmerstransitioning to C++.Unlike most other C++ books, this book emphasizesa practical, real-world approach, including how to debug, how to make yourcode understandable to others, and how to understand other people's code. Topics covered include good programming style, C++ syntax (what to use andwhat not to use), C++ class design, debugging and optimization, and commonprogramming mistakes.At the end of each chapter are a number of exercisesyou can use to make sure you've grasped the concepts.Solutions to mostare provided."Practical C++ Programming describes standard C++ features that are supported by all UNIX C++ compilers (including "gcc") and DOS/Windowsand NT compilers (including Microsoft Visual C++).
About the Author
Steve Oualline lives in Southern California, where he works as a software engineer for a major phone company. In his free time he is a real engineer on the Poway Midland Railroad. Steve has written almost a dozen books on programming and Linux software. His web site is
Table of Contents
Table of Contents Preface Part I: The Basics Chapter 1: What Is C++? A Brief History of C++ C++ Organization How to Learn C++ Chapter 2: The Basics of Program Writing Programs from Conception to Execution Creating a Real Program Creating a Program Using a Command-Line Compiler Creating a Program Using an Integrated Development Environment . 16 Getting Help in UNIX Getting Help in an Integrated Development Environment Programming Exercises Chapter 3: Style Comments C++ Code Naming Style Coding Religion Indentation and Code Format Clarity Simplicity Consistency and Organization Further Reading Summary Chapter 4: Basic Declarations and Expressions The Elements of a Program Basic Program Structure Simple Expressions The cout Output Class Variables and Storage Variable Declarations Integers Assignment Statements Floating Point Numbers Floating Point Versus Integer Divide Characters Programming Exercises Answers to Chapter Questions Chapter 5: Arrays, Qualifiers, and Reading Numbers Arrays Strings Reading Data Initializing Variables Multidimensional Arrays Types of Integers Types of Floats Constant and Reference Declarations Qualifiers Hexadecimal and Octal Constants Operators for Performing Shortcuts Side Effects Programming Exercises Answers to Chapter Questions Chapter 6: Decision and Control Statements if Statement else Statement How Not to Use strcmp Looping Statements while Statement Break Statement continue Statement The Assignment Anywhere Side Effect Programming Exercises Answers to Chapter Questions Chapter 7: The Programming Process Setting Up The Specification Code Design The Prototype The Makefile Testing Debugging Maintenance Revisions Electronic Archaeology Mark Up the Program Use the Debugger Use the Text Editor as a Browser Add Comments Programming Exercises Part II: Simple Programming Chapter 8: More Control Statements for Statement switch Statement switch, break, and continue Programming Exercises Answers to Chapter Questions Chapter 9: Variable Scope and Functions Scope and Storage Class Functions Summary of Parameter Types Structured Programming Basics Recursion Programming Exercises Answers to Chapter Questions Chapter 10: The C++ Preprocessor #define Statement Conditional Compilation #include Files Parameterized Macros Advanced Features Summary Programming Exercises Answers to Chapter Questions Chapter 11: Bit Operations Bit Operators The AND Operator (&) Bitwise OR (|) The Bitwise Exclusive OR (^) The Ones Complement Operator (NOT) (~) The Left and Right Shift Operators (<<, >>) Setting, Clearing, and Testing Bits Bitmapped Graphics Programming Exercises Answers to Chapter Questions Part III: Advanced Types and Classes Chapter 12: Advanced Types Structures Unions typedef enum Type Bit Fields or Packed Structures Arrays of Structures Programming Exercises Chapter 13: Simple Classes Stacks Improved Stack Using a Class Introduction to Constructors and Destructors Automatically Generated Member Functions Shortcuts Style Programming Exercises Chapter 14: More on Classes Friends Constant Functions Constant Members Static Member Variables Static Member Functions The Meaning of static Programming Exercises Chapter 15: Simple Pointers Constant Pointers Pointers and Printing Pointers and Arrays Splitting Strings Pointers and Structures Command-Line Arguments Programming Exercises Answers to Chapter Questions Part IV: Advanced Programming Concepts Chapter 16: File Input/Output C++ File I/O Conversion Routines Binary and ASCII Files The End-of-Line Puzzle Binary I/O Buffering Problems Unbuffered I/O Designing File Formats C-Style I/O Routines C-Style Conversion Routines C-Style Binary I/O Programming Exercises Answers to Chapter Questions Chapter 17: Debugging and Optimization Debugging Serial Debugging Divide and Conquer Debug-Only Code Debug Command-Line Switch Going Through the Output Interactive Debuggers Debugging a Binary Search Runtime Errors The Confessional Method of Debugging Optimization The Power of Powers of 2 How to Optimize Case Study: Inline Functions Versus Normal Functions Case Study: Optimizing a Color-Rendering Algorithm Programming Exercises Answers to Chapter Questions Chapter 18: Operator Overloading Operator Functions Operator Member Functions Full Definition of the Complex Class Programming Exercises Answers to Chapter Questions Chapter 19: Floating Point Floating-Point Format Floating Addition/Subtraction Multiplication Division Overflow and Underflow Roundoff Error Accuracy Minimizing Roundoff Error Determining Accuracy Precision and Speed Power Series Programming Exercises Chapter 20: Advanced Pointers Pointers, Structures, and Classes delete Operator Linked List Ordered Linked Lists Double-linked List Trees Printing a Tree The Rest of the Program Data Structures for a Chess Program Programming Exercises Answers to Chapter Questions Chapter 21: Advanced Classes Derived Classes Virtual Functions Virtual Classes Function Hiding in Derived Classes Constructors and Destructors in Derived Classes Summary Programming Exercises Answers to Chapter Questions Part V: Other Language Features Chapter 22: Exceptions Stack Exceptions Runtime Library Exceptions Programming Exercises Chapter 23: Modular Programming Modules Public and Private The extern Modifier Headers The Body of the Module A Program to Use Infinite Arrays The Makefile for Multiple Files Using the Infinite Array Dividing a Task into Modules Module Division Example: Text Editor Compiler Construction Spreadsheet Module Design Guidelines Programming Exercises Chapter 24: Templates What Is a Template? Templates: The Hard Way Function Specialization Class Templates Class Specialization Implementation Difficulties Summary Programming Exercises Chapter 25: Portability Problems Modularity Word Size Byte-Order Problem Alignment Problem NULL-Pointer Problem Filename Problems File Types Summary Answers to Chapter Questions Chapter 26: Putting It All Together Requirements Code Design Coding Functional Description Testing Revisions A Final Warning Program Files Programming Exercises Chapter 27: From C to C++ Overview K&R-Style Functions struct malloc and free Turning Structures into Classes ssetjmp and longjmp Summary Programming Exercise Chapter 28: C++'s Dustier Corners do/while goto The ?: Construct The Comma Operator Overloading the ( ) Operator Pointers to Members Vampire Features Answers to Chapter Questions Chapter 29: Programming Adages General Design Declarations switch Statement Preprocessor Style Compiling The Ten Commandments for C++ Programmers Final Note Answers to Chapter Questions Part VI: Appendixes Appendix A: ASCII Table Appendix B: Ranges Appendix C: Operator Precedence Rules Appendix D: Computing sine Using a Power Series Glossary Index
What Our Readers Are Saying