Expert C Programming

Series
Prentice Hall
Author
Peter van der Linden  
Publisher
Pearson
Cover
Softcover
Edition
1
Language
English
Total pages
384
Pub.-date
June 1994
ISBN13
9780131774292
ISBN
0131774298
Related Titles


Product detail

Product Price CHF Available  
9780131774292
Expert C Programming
48.10 approx. 7-9 days

Description

For software engineers and computer programmers who are writing, developing, testing, debugging software on either IBM PCs or Unix systems.

Written for experienced C programmers who want to quickly pick up some of the insights and techniques of experts and master the fine arts of ANSI C, this volume passes on the wisdom of a highly experienced C compiler writer and his colleagues to help programmers reach new heights, and avoid common software pitfalls along the way. Using an original approach and a humorous style that makes deep knowledge both easy and accessible, it gathers into one place, tips, hints, shortcuts, guidelines, ideas, idioms, heuristics, tools, anecdotes, C folklore, and techniques that are often penciled in margins and on backs of papers by those working in the programming trenches—working on many different kinds of projects, over many, many years.

Features

  • completely up-to-date with ANSI C.
  • acknowledges the human side of computer programming—too often overlooked by other writers.
  • applies ANSI standard C as found on PCs and Unix systems.
  • covers unique aspects of C relating to sophisticated hardware typically found on Unix platforms (virtual memory, etc.).
  • uses the terminology of ANSI throughout, along with translations into ordinary English where needed.
  • contains boxed Programming Challenges and Handy Heuristics (ideas, rules-of thumb, or guidelines that work in practice).
  • includes one of the best introductions to C++, and the rationale behind it.
  • covers many topics that many C programmers find confusing: What does typedef struct bar {int bar} bar; actually mean? How can I pass differently-sized multi-dimensional arrays to one function? What's the difference between char *foo[] and char (*foo)[]? What's a bus error? What's a segmentation violation?
  • contains many interesting C stories and folklore, such as the January 1990 slowdown of the entire AT&T phone network (caused by a C bug).

Table of Contents



Introduction.


 1. The ANSI C Standard.


 2. It's Not a Bug, It's a Language Feature!


 3. Unscrambling Declarations in C.


 4. Thinking of Linking.


 5. Poetry in Motion—Runtime Data Structures.


 6. Why Programmers Can't Tell Halloween from Christmas Day.


 7. The Shocking Truth: Arrays and Pointers Are Not Equivalent!


 8. More about Arrays.


 9. More about Pointers.


10. You Know C—C++ Is Easy!


Appendix: C Interview Secrets.

Back Cover

This is a very different book on the C language! In an easy, conversational style, Peter van der Linden, of Sun's compiler and OS kernel group, presents dozens of astonishing examples drawn from practical experience, including:

  • Software that blew up the space probe to Venus
  • The C bug that shut down the entire AT&T phone system
  • C programmer job interview secrets
  • Why programmers can't tell Halloween from Christmas day
  • The C code for a complete BASIC interpreter

Expert C Programming reveals the coding techniques used by the best C programmers. It relates C to other languages, and includes an introduction to C++ that can be understood by an programmer without weeks of mind-bending study. Covering both the IBM PC and UNIX systems, it is an entertaining and educational romp through C showing how experts really use it. Expert C Programming is a must read for anyone who wants to learn more about the implementation, practical use, and folklore of C.

'Not just clearly written, but fun to read. The tone and style of this text should make this a popular book with professional programmers. However, the tone of this book will make it very popular with undergraduates. Appendix A alone would make the purchase of this book a must. It's filled with great advice.'

—Professor Jack Beidler, Chairman, Department of Computer Science, University of Scranton

'So that's why extern char *cp isn't the same as extern char cp. I knew that it didn't work despite their superficial equivalence, but I didn't know why. I also love the job interview test questions on C.'

—David S. Platt, Rolling Thunder Computing

'In Expert C Programming, Peter van der Linden combines C language expertise and a subtle sense of humor to deliver a C programming book that stands out from the pack. In a genre too often known for windy, lifeless prose, van der Linden's crisp language, tongue-in-cheek attitude, and real-world examples engage and instruct.'

—John Barry, author of Sunburst, Technobabble, and other books