Simple Data Types: Built-In and User Defined

I. Built-In Simple Types

A. Integral Types

1. Ranges of Values

2. Constants

B. Floating Point Types

1. Ranges of Values

2. Constants

II. Additional C++ Operators

A. Assignment Operators and Assignment Expressions

B. Increment and Decrement Operators

C. Bitwise Operators

D. The Cast Operator

E. The sizeof Operator

F. The ?: Operator

G. Operator Precedence

III. Working with Character Data

A. Character Sets

B. C++ char Constants

C. Programming Techniques

1. Comparing Characters

2. Converting Digit Characters to Integers

3. Converting to Lowercase and Uppercase

IV. More on Floating Point Numbers

A. Representation of Floating Point Numbers

B. Arithmetic with Floating Point Numbers

C. Implementation of Floating Point Numbers in the Computer

1. Underflow and Overflow

2. Cancellation Error

D. Software Engineering Tip: Choosing a Numeric Data Type

E. Background Information: Practical Implications of Limited Precision

V. User-Defined Simple Types

A. The Typedef Statement

B. Enumeration Types

1. Assignment

2. Incrementation

3. Comparison

4. Input and Output

5. Returning a Function Value

C. Named and Anonymous Data Types

D. User-Written Header Files

VI. More On Type Coercion

A. Type Coercion in Arithmetic and Relational Expressions

D. Type Coercion in Assignments, Parameter Passage, and Return of a Function Value

VII. Testing and Debugging

A. Floating Point Data

B. Coping with Input Errors

C. Testing and Debugging Hints

VIII. Summary