did-you-know? rent-now

Amazon no longer offers textbook rentals. We do!

did-you-know? rent-now

Amazon no longer offers textbook rentals. We do!

We're the #1 textbook rental company. Let us show you why.

9780321412911

Starting Out with C++ Brief Version : From Control Structures Through Objects

by
  • ISBN13:

    9780321412911

  • ISBN10:

    0321412915

  • Edition: 5th
  • Format: Paperback w/CD
  • Copyright: 2010-01-01
  • Publisher: Addison Wesley
  • View Upgraded Edition
  • Purchase Benefits
  • Free Shipping Icon Free Shipping On Orders Over $35!
    Your order must be $35 or more to qualify for free economy shipping. Bulk sales, PO's, Marketplace items, eBooks and apparel do not qualify for this offer.
  • eCampus.com Logo Get Rewarded for Ordering Your Textbooks! Enroll Now
List Price: $118.00

Summary

Starting Out with C++ teaches C++ from the ground up, and assumes no prior background in programming. In Starting Out With C++, Gaddis makes a very detailed and slow-paced presentation of both programming and C++ syntax concepts so all readers will be able to follow along. Objects are introduced after control structures, functions, arrays, and pointers, and C-style strings are used throughout. This book is designed for readers without prior programming experience, and is also appropriate for those with knowledge of other languages who want to learn the C++ programming language.

Table of Contents

Preface ix
Introduction to Computers and Programming
1(26)
Why Program?
1(1)
Computer Systems: Hardware and Software
2(4)
Programs and Programming Languages
6(6)
What Is a Program Made of?
12(4)
Input, Processing, and Output
16(1)
The Programming Process
17(4)
Procedural and Object-Oriented Programming
21(6)
Introduction to C++
27(50)
The Parts of a C++ Program
27(4)
The cout Object
31(4)
The #include Directive
35(2)
Variables and Literals
37(3)
Identifiers
40(2)
Integer Data Types
42(4)
The char Data Type
46(5)
Floating-Point Data Types
51(4)
The bool Data Type
55(1)
Determining the Size of a Data Type
56(1)
Variable Assignments and Initialization
57(1)
Scope
58(1)
Arithmetic Operators
59(4)
Comments
63(2)
Focus on Software Engineering: Programming Style
65(2)
If You Plan to Continue in Computer Science: Standard and Prestandard C++
67(10)
Expressions and Interactivity
77(80)
The cin Object
77(8)
Mathematical Expressions
85(8)
When You Mix Apples and Oranges: Type Conversion
93(2)
Overflow and Underflow
95(1)
Type Casting
96(4)
Named Constants
100(5)
Multiple Assignment and Combined Assignment
105(4)
Formatting Output
109(10)
Formatted Input
119(5)
Focus on Object-Oriented Programming: More About Member Functions
124(1)
More Mathematical Library Functions
124(4)
Focus on Debugging: Hand Tracing a Program
128(2)
Focus on Problem Solving: A Case Study
130(4)
Introduction to File Input and Output
134(23)
Making Decisions
157(82)
Relational Operators
157(5)
The if Statement
162(8)
Flags
170(1)
Expanding the if Statement
171(4)
The if/else Statement
175(3)
The if/else if Statement
178(5)
Using a Trailing else
183(1)
Menus
184(2)
Focus on Software Engineering: Nested if Statements
186(6)
Logical Operators
192(6)
Checking Numeric Ranges with Logical Operators
198(2)
Focus on Software Engineering: Validating User Input
200(2)
More About Variable Definitions and Scope
202(4)
Comparing Strings
206(5)
The Conditional Operator
211(4)
The switch Statement
215(9)
Testing for File Open Errors
224(15)
Looping
239(52)
The Increment and Decrement Operators
239(5)
Introduction to Loops: The while Loop
244(5)
Using the while Loop for Input Validation
249(3)
Counters
252(1)
The do-while Loop
253(5)
The for Loop
258(9)
Keeping a Running Total
267(1)
Sentinels
268(2)
Using a Loop to Read Data from a File
270(3)
Focus on Software Engineering: Deciding Which Loop to Use
273(1)
Nested Loops
273(3)
Breaking Out of a Loop
276(2)
The continue Statement
278(13)
Functions
291(74)
Focus on Software Engineering: Modular Programming
291(2)
Defining and Calling Functions
293(8)
Function Prototypes
301(2)
Sending Data into a Function
303(5)
Passing Data by Value
308(2)
Focus on Software Engineering: Using Functions in a Menu-Driven Program
310(4)
The return Statement
314(2)
Returning a Value from a Function
316(6)
Returning a Boolean Value
322(2)
Local and Global Variables
324(7)
Static Local Variables
331(4)
Default Arguments
335(4)
Using Reference Variables as Parameters
339(5)
Overloading Functions
344(5)
The exit () Function
349(2)
Stubs and Drivers
351(14)
Arrays
365(76)
Arrays Hold Multiple Values
365(2)
Accessing Array Elements
367(7)
No Bounds Checking in C++
374(3)
Array Initialization
377(5)
Processing Array Contents
382(8)
Focus on Software Engineering: Using Parallel Arrays
390(3)
Arrays as Function Arguments
393(10)
Two-Dimensional Arrays
403(7)
Arrays of Strings
410(2)
Arrays with Three or More Dimensions
412(2)
Focus on Problem Solving and Program Design: A Case Study
414(2)
If You Plan to Continue in Computer Science: Introduction to the STL vector
416(25)
Pointers
441(48)
Getting the Address of a Variable
441(2)
Pointer Variables
443(7)
The Relationship Between Arrays and Pointers
450(4)
Pointer Arithmetic
454(2)
Initializing Pointers
456(1)
Comparing Pointers
457(2)
Pointers as Function Parameters
459(9)
Focus on Software Engineering: Dynamic Memory Allocation
468(4)
Focus on Software Engineering: Returning Pointers from Functions
472(4)
Focus on Problem Solving and Program Design: A Case Study
476(13)
Characters, Strings, and the string Class
489(48)
Character Testing
489(4)
Character Case Conversion
493(3)
Review of the Internal Storage of C-Strings
496(3)
Library Functions for Working with C-Strings
499(8)
String/Numeric Conversion Functions
507(5)
Focus on Software Engineering: Writing Your Own C-String-Handling Functions
512(6)
The C++ string Class
518(10)
Focus on Problem Solving and Program Design: A Case Study
528(9)
Structured Data
537(60)
Abstract Data Types
537(2)
Focus on Software Engineering: Combining Data into Structures
539(3)
Accessing Structure Members
542(5)
Initializing a Structure
547(4)
Arrays of Structures
551(3)
Focus on Software Engineering: Nested Structures
554(4)
Structures as Function Arguments
558(3)
Returning a Structure from a Function
561(3)
Pointers to Structures
564(3)
Focus on Software Engineering: When to Use., When to Use->, and When to Use *
567(2)
Unions
569(4)
Enumerated Data Types
573(24)
Advanced File Operations
597(54)
File Operations
597(7)
File Output Formatting
604(3)
Passing File Stream Objects to Functions
607(2)
More Detailed Error Testing
609(3)
Member Functions for Reading and Writing Files
612(7)
Focus on Software Engineering: Working with Multiple Files
619(1)
Binary Files
620(6)
Creating Records with Structures
626(4)
Random-Access Files
630(8)
Opening a File for Both Input and Output
638(13)
Introduction to Classes
651(94)
Procedural and Object-Oriented Programming
651(7)
Introduction to Classes
658(5)
Defining an Instance of a Class
663(11)
Why Have Private Members?
674(1)
Focus on Software Engineering: Separating Class Specification from Implementation
675(6)
Inline Member Functions
681(3)
Constructors
684(4)
Passing Arguments to Constructors
688(8)
Destructors
696(4)
Overloading Constructors
700(4)
Private Member Functions
704(2)
Arrays of Objects
706(4)
Focus on Problem Solving and Program Design: An OOP Case Study
710(7)
Focus on Object-Oriented Programming: Creating an Abstract Array Data Type
717(4)
Focus on Object-Oriented Design: The Unified Modeling Language (UML)
721(3)
Focus on Object-Oriented Design: Finding the Classes and Their Responsibilities
724(21)
More About Classes
745(70)
Instance and Static Members
745(8)
Friends of Classes
753(5)
Memberwise Assignment
758(1)
Copy Constructors
759(4)
Operator Overloading
763(27)
Object Conversion
790(2)
Aggregation
792(6)
Focus on Object-Oriented Design: Class Collaborations
798(17)
Inheritance, Polymorphism, and Virtual Functions
815(74)
What Is Inheritance?
815(9)
Protected Members and Class Access
824(6)
Constructors and Destructors in Base and Derived Classes
830(7)
Redefining Base Class Functions
837(4)
Class Hierarchies
841(6)
Polymorphism and Virtual Member Functions
847(15)
Abstract Base Classes and Pure Virtual Functions
862(7)
Multiple Inheritance
869(20)
Appendix A: The ASCII Character Set 889(4)
Appendix B: Operator Precedence and Associativity 893(2)
Index 895

Supplemental Materials

What is included with this book?

The New copy of this book will include any supplemental materials advertised. Please check the title of the book to determine if it should include any access cards, study guides, lab manuals, CDs, etc.

The Used, Rental and eBook copies of this book are not guaranteed to include any supplemental materials. Typically, only the book itself is included. This is true even if the title states it includes any access cards, study guides, lab manuals, CDs, etc.

Rewards Program