Cart
Free US shipping over $10
Proud to be B-Corp

Practical C Programming Steve Oualline

Practical C Programming By Steve Oualline

Practical C Programming by Steve Oualline


$24.99
Condition - Like New
Only 1 left

Summary

This volume aims to teach not only the mechanics of programming, but also how to create programs that are easy to read, debug, and update.

Practical C Programming Summary

Practical C Programming by Steve Oualline

There are lots of introductory C books, but this is the first one that has the no-nonsense, practical approach that has made Nutshell Handbooks(r) famous. C programming is more than just getting the syntax right. Style and debugging also play a tremendous part in creating programs that run well and are easy to maintain. This book teaches you not only the mechanics of programming, but also describes how to create programs that are easy to read, debug, and update. Practical rules are stressed. For example, there are fifteen precedence rules in C (&& comes before || comes before ?:). The practical programmer reduces these to two: * Multiplication and division come before addition and subtraction. Contrary to popular belief, most programmers do not spend most of their time creating code. Most of their time is spent modifying someone else's code. This books shows you how to avoid the all-too-common obfuscated uses of C (and also to recognize these uses when you encounter them in existing programs) and thereby to leave code that the programmer responsible for maintenance does not have to struggle with. Electronic Archaeology, the art of going through someone else's code, is described. 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.

About Steve Oualline

Steve Oualline wrote his first program when he was eleven. It had a bug in it. Since that time he has studied practical ways of writing programs so that the risk of generating a bug is reduced. He currently works as a software engineer in Southern California. His spare time is spent on real engineering on a steam train at the Poway-Midland Railroad.

Table of Contents

Preface. How This Book is Organized. Chapter by Chapter. Notes on the Third Edition. Font Conventions. Obtaining Source Code. Comments and Questions. Acknowledgments. Acknowledgments to the Third Edition. I. Basics 1. What Is C? How Programming Works Brief History of C How C Works How to Learn C. 2. 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 Getting Help on UNIX Getting Help in an Integrated Development Environment IDE Cookbooks Programming Exercises. 3. Style Common Coding Practices Coding Religion Indentation and Code Format Clarity Simplicity Summary. 4. Basic Declarations and Expressions Elements of a Program Basic Program Structure Simple Expressions Variables and Storage Variable Declarations Integers Assignment Statements printf Function Floating Point Floating Point Versus Integer Divide Characters Answers Programming Exercises. 5. Arrays, Qualifiers, and Reading Numbers Arrays Strings Reading Strings Multidimensional Arrays Reading Numbers Initializing Variables Types of Integers Types of Floats Constant Declarations Hexadecimal and Octal Constants Operators for Performing Shortcuts Side Effects ++x or x++ More Side-Effect Problems Answers Programming Exercises. 6. Decision and Control Statements if Statement else Statement How Not to Use strcmp Looping Statements while Statement break Statement continue Statement Assignment Anywhere Side Effect Answer Programming Exercises. 7. Programming Process Setting Up Specification Code Design Prototype Makefile Testing Debugging Maintenance Revisions Electronic Archaeology Marking Up the Program Using the Debugger Text Editor as a Browser Add Comments Programming Exercises. II. Simple Programming. 8. More Control Statements for Statement switch Statement switch, break, and continue Answers Programming Exercises. 9. Variable Scope and Functions Scope and Class Functions Functions with No Parameters Structured Programming Recursion Answers Programming Exercises. 10. C Preprocessor define Statement Conditional Compilation include Files Parameterized Macros Advanced Features Summary Answers Programming Exercises. 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 Answers Programming Exercises. 12. Advanced Types Structures Unions typedef enum Type Casting Bit Fields or Packed Structures Arrays of Structures Summary Programming Exercises. 13. Simple Pointers Pointers as Function Arguments const Pointers Pointers and Arrays How Not to Use Pointers Using Pointers to Split a String Pointers and Structures Command-Line Arguments Programming Exercises Answers. 14. File Input/Output Conversion Routines Binary and ASCII Files The End-of-Line Puzzle Binary I/O Buffering Problems Unbuffered I/O Designing File Formats Answers Programming Exercises. 15. Debugging and Optimization Debugging Interactive Debuggers Debugging a Binary Search Runtime Errors The Confessional Method of Debugging Optimization Answers Programming Exercises. 16. 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. III. Advanced Programming Concepts 17. Advanced Pointers Pointers and Structures free Function Linked List Structure Pointer Operator Ordered Linked Lists Double-Linked Lists Trees Printing a Tree Rest of Program Data Structures for a Chess Program Answers Programming Exercises. 18. 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 Spreadsheet Module Design Guidelines Programming Exercises. 19. Ancient Compilers K&R-Style Functions Library Changes Missing Features Free/Malloc Changes lint Answers. 20. Portability Problems Modularity Word Size Byte Order Problem Alignment Problem NULL Pointer Problem Filename Problems File Types Summary Answers. 21. C's Dustier Corners do/while goto The ?: Construct The , Operator volatile Qualifier Answer. 22. Putting It All Together Requirements Specification Code Design Coding Functional Description Expandability Testing Revisions A Final Warning Program Files Programming Exercises. 23. Programming Adages General Design Declarations switch Statement Preprocessor Style Compiling Final Note Answer IV. Other Language Features A. ASCII Table B. Ranges and Parameter Passing Conversions C. Operator Precedence Rules D. A Program to Compute a Sine Using a Power Series Glossary Index

Additional information

GOR011592750
9781565923065
1565923065
Practical C Programming by Steve Oualline
Used - Like New
Paperback
O'Reilly Media, Inc, USA
1997-08-01
454
N/A
Book picture is for illustrative purposes only, actual binding, cover or edition may vary.
The book has been read, but looks new. The book cover has no visible wear, and the dust jacket is included if applicable. No missing or damaged pages, no tears, possible very minimal creasing, no underlining or highlighting of text, and no writing in the margins

Customer Reviews - Practical C Programming