Buying Options
Practical C Programming, Third Edition
Print $34.95
Add to Cart
Safari Books Online
Add to Cart
What is this?
Print £26.99
Add to Cart
What is this?
Description
Practical C Programming teaches you not only the mechanics of programming, but also how to create programs that are easy to read, maintain, and debug. This third edition introduces popular Integrated Development Environments on Windows systems, as well as UNIX programming utilities, and features a large statistics-generating program to pull together the concepts and features in the language.
Full Description
Table of Contents
  1. Basics

    1. Chapter 1 What Is C?

      1. How Programming Works
      2. Brief History of C
      3. How C Works
      4. How to Learn C
    2. Chapter 2 Basics of Program Writing

      1. Programs from Conception to Execution
      2. Creating a Real Program
      3. Creating a Program Using a Command-Line Compiler
      4. Creating a Program Using an Integrated Development Environment
      5. Getting Help on UNIX
      6. Getting Help in an Integrated Development Environment
      7. IDE Cookbooks
      8. Programming Exercises
    3. Chapter 3 Style

      1. Common Coding Practices
      2. Coding Religion
      3. Indentation and Code Format
      4. Clarity
      5. Simplicity
      6. Summary
    4. Chapter 4 Basic Declarations and Expressions

      1. Elements of a Program
      2. Basic Program Structure
      3. Simple Expressions
      4. Variables and Storage
      5. Variable Declarations
      6. Integers
      7. Assignment Statements
      8. printf Function
      9. Floating Point
      10. Floating Point Versus Integer Divide
      11. Characters
      12. Answers
      13. Programming Exercises
    5. Chapter 5 Arrays, Qualifiers, and Reading Numbers

      1. Arrays
      2. Strings
      3. Reading Strings
      4. Multidimensional Arrays
      5. Reading Numbers
      6. Initializing Variables
      7. Types of Integers
      8. Types of Floats
      9. Constant Declarations
      10. Hexadecimal and Octal Constants
      11. Operators for Performing Shortcuts
      12. Side Effects
      13. ++x or x++
      14. More Side-Effect Problems
      15. Answers
      16. Programming Exercises
    6. Chapter 6 Decision and Control Statements

      1. if Statement
      2. else Statement
      3. How Not to Use strcmp
      4. Looping Statements
      5. while Statement
      6. break Statement
      7. continue Statement
      8. Assignment Anywhere Side Effect
      9. Answer
      10. Programming Exercises
    7. Chapter 7 Programming Process

      1. Setting Up
      2. Specification
      3. Code Design
      4. Prototype
      5. Makefile
      6. Testing
      7. Debugging
      8. Maintenance
      9. Revisions
      10. Electronic Archaeology
      11. Marking Up the Program
      12. Using the Debugger
      13. Text Editor as a Browser
      14. Add Comments
      15. Programming Exercises
  2. Simple Programming

    1. Chapter 8 More Control Statements

      1. for Statement
      2. switch Statement
      3. switch, break, and continue
      4. Answers
      5. Programming Exercises
    2. Chapter 9 Variable Scope and Functions

      1. Scope and Class
      2. Functions
      3. Functions with No Parameters
      4. Structured Programming
      5. Recursion
      6. Answers
      7. Programming Exercises
    3. Chapter 10 C Preprocessor

      1. #define Statement
      2. Conditional Compilation
      3. include Files
      4. Parameterized Macros
      5. Advanced Features
      6. Summary
      7. Answers
      8. Programming Exercises
    4. Chapter 11 Bit Operations

      1. Bit Operators
      2. The and Operator (&)
      3. Bitwise or (|)
      4. The Bitwise Exclusive or (^)
      5. The Ones Complement Operator (Not) (~)
      6. The Left- and Right-Shift Operators (<<, >>)
      7. Setting, Clearing, and Testing Bits
      8. Bitmapped Graphics
      9. Answers
      10. Programming Exercises
    5. Chapter 12 Advanced Types

      1. Structures
      2. Unions
      3. typedef
      4. enum Type
      5. Casting
      6. Bit Fields or Packed Structures
      7. Arrays of Structures
      8. Summary
      9. Programming Exercises
    6. Chapter 13 Simple Pointers

      1. Pointers as Function Arguments
      2. const Pointers
      3. Pointers and Arrays
      4. How Not to Use Pointers
      5. Using Pointers to Split a String
      6. Pointers and Structures
      7. Command-Line Arguments
      8. Programming Exercises
      9. Answers
    7. Chapter 14 File Input/Output

      1. Conversion Routines
      2. Binary and ASCII Files
      3. The End-of-Line Puzzle
      4. Binary I/O
      5. Buffering Problems
      6. Unbuffered I/O
      7. Designing File Formats
      8. Answers
      9. Programming Exercises
    8. Chapter 15 Debugging and Optimization

      1. Debugging
      2. Interactive Debuggers
      3. Debugging a Binary Search
      4. Runtime Errors
      5. The Confessional Method of Debugging
      6. Optimization
      7. Answers
      8. Programming Exercises
    9. Chapter 16 Floating Point

      1. Floating-Point Format
      2. Floating Addition/Subtraction
      3. Multiplication
      4. Division
      5. Overflow and Underflow
      6. Roundoff Error
      7. Accuracy
      8. Minimizing Roundoff Error
      9. Determining Accuracy
      10. Precision and Speed
      11. Power Series
      12. Programming Exercises
  3. Advanced Programming Concepts

    1. Chapter 17 Advanced Pointers

      1. Pointers and Structures
      2. free Function
      3. Linked List
      4. Structure Pointer Operator
      5. Ordered Linked Lists
      6. Double-Linked Lists
      7. Trees
      8. Printing a Tree
      9. Rest of Program
      10. Data Structures for a Chess Program
      11. Answers
      12. Programming Exercises
    2. Chapter 18 Modular Programming

      1. Modules
      2. Public and Private
      3. The extern Modifier
      4. Headers
      5. The Body of the Module
      6. A Program to Use Infinite Arrays
      7. The Makefile for Multiple Files
      8. Using the Infinite Array
      9. Dividing a Task into Modules
      10. Module Division Example: Text Editor
      11. Compiler
      12. Spreadsheet
      13. Module Design Guidelines
      14. Programming Exercises
    3. Chapter 19 Ancient Compilers

      1. K&R-Style Functions
      2. Library Changes
      3. Missing Features
      4. Free/Malloc Changes
      5. lint
      6. Answers
    4. Chapter 20 Portability Problems

      1. Modularity
      2. Word Size
      3. Byte Order Problem
      4. Alignment Problem
      5. NULL Pointer Problem
      6. Filename Problems
      7. File Types
      8. Summary
      9. Answers
    5. Chapter 21 C's Dustier Corners

      1. do/while
      2. goto
      3. The ?: Construct
      4. The , Operator
      5. volatile Qualifier
      6. Answer
    6. Chapter 22 Putting It All Together

      1. Requirements
      2. Specification
      3. Code Design
      4. Coding
      5. Functional Description
      6. Expandability
      7. Testing
      8. Revisions
      9. A Final Warning
      10. Program Files
      11. Programming Exercises
    7. Chapter 23 Programming Adages

      1. General
      2. Design
      3. Declarations
      4. switch Statement
      5. Preprocessor
      6. Style
      7. Compiling
      8. Final Note
      9. Answer
  4. Other Language Features

    1. Appendix A ASCII Table

    2. Appendix B Ranges and Parameter Passing Conversions

      1. Ranges
      2. Automatic Type Conversions to Use When Passing Parameters
    3. Appendix C Operator Precedence Rules

      1. Standard Rules
      2. Practical Subset
    4. Appendix D A Program to Compute a Sine Using a Power Series

      1. The sine.c Program
  1. Glossary

  2. Colophon

View Full Table of Contents
Product Details
Title:
Practical C Programming, Third Edition
By:
Steve Oualline
Publisher:
O'Reilly Media
Formats:
  • Print
  • Safari Books Online
Print Release:
August 1997
Pages:
456
Print ISBN:
978-1-56592-306-5
| ISBN 10:
1-56592-306-5
Customer Reviews
About the Author
  1. Steve Oualline

    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 http://www.oualline.com .

    View Steve Oualline's full profile page.

Colophon

Our look is the result of reader comments, our own experimentation, and feedback from distribution channels. Distinctive covers complement our distinctive approach to technical topics, breathing personality and life into potentially dry subjects. The animal featured on the cover of Practical C Programming is a Jersey cow. The Jersey, one of the many breeds of modern cows, originated from a now extinct stock of wild cattle that inhabited western Asia, North Africa, and continental Europe. Cows were first introduced into the western hemisphere by Christopher Columbus on his second voyage in 1493.

Jerseys, bred on the British isle of Jersey since 1789, were first introduced to America in the 1850s. Smallest of the modern dairy cows, this fawn-colored beast typically weighs between 1000 and 1500 pounds. As a milk producer, Jerseys are the least prolific of any American dairy cow. However, their milk is creamier than that of any other breed. Edie Freedman designed the cover of this book, using a 19th-century engraving from the Dover Pictorial Archive. The cover layout was produced with Quark XPress 3.32 using the ITC Garamond font.

The inside layout was designed by Nancy Priest and implemented in FrameMaker 5.0 by Mike Sierra. The text and heading fonts are ITC Garamond Light and Garamond Book. The illustrations that appear in the book were created in Macromedia Freehand 5.0 by Chris Reilley and updated by Robert Romano. This colophon was written by Michael Kalantarian.

  • Book cover of Practical C Programming