The C/Unix Programmer's Guide


AIX BEOS DesktopBSD FreeBSD Gentoo Linux Mac OS X
NetBSD OpenBSD PC-BSD QNX Solaris Ubuntu

Table of Contents

General
Detailed

Updates

Addendum
New Developments

Want to know more?

Some additional information about the book is available here.

Program source

The source code for all major program examples in the book is available as a tar ball. A script for compiling the programs is included. Download

Available at...

Amazon.com

Libraries

To order a copy for your library, please visit Coutts Library Service.

Organization

The C/Unix Programmer's Guide is organized as a progressive tutorial for those who are new to programming. Each chapter is clearly marked with a Before you begin box stating what you need to know before reading the chapter. No knowledge of computers or programming is assumed. Beginning readers need only basic algebra skills to proceed. If you already have some experience, you can probably skip the first few chapters, but you may wish to read them anyway. In this case, they'll be easy reading, and you'll undoubtedly get something out of it!

While the book is organized as a tutorial, subjects are also carefully separated and indexed so that it will serve as a valuable reference. Unlike some texts, which blend several loosely related subjects into each chapter, The C/Unix Programmer's Guide is extensively outlined so that you can quickly find what you need in the table of contents. It also includes a 10-page index, for looking up those obscure subjects.

Examples

Examples are probably the most influential part of any textbook. The visual nature of examples makes them one of the most powerful and lasting impressions taken in by the reader. While the text is important in laying out the concepts, it is the examples that bring the knowledge together in a form that can be easily stored and retrieved by the human mind.

One of the most important facts I discovered in my seven years of teaching, was that students learn their programming style primarily from the examples they copy and adapt from their text books. Teachers are essentially powerless in preventing students from following bad examples in print. Therefore, The C/Unix Programmer's Guide adheres to very strict coding standards throughout the text, so that students will be more likely to write maintainable code (which will make their instructors happy, and earn them good grades). There are no examples using global variables, gotos, or inappropriate hard-coded constants. All examples make extensive use of portable and modifiable constructs provided in the header files, including type definitions such as size_t, and manifest constants such as M_PI.