This book is meant to help the reader learn how to program in C. It is the definitive reference guide, now in a second edition. Although the first edition was written in 1978, it continues to be a worldwide best-seller. This second edition brings the classic original up to date to include the ANSI standard.
From the Preface:
We have tried to retain the brevity of the first edition. C is not a big language, and it is not well served by a big book. We have improved the exposition of critical features, such as pointers, that are central to C programming. We have refined the original examples, and have added new examples in several chapters. For instance, the treatment of complicated declarations is augmented by programs that convert declarations into words and vice versa. As before, all examples have been tested directly from the text, which is in machine-readable form.
As we said in the first preface to the first edition, C "wears well as one's experience with it grows." With a decade more experience, we still feel that way. We hope that this book will help you to learn C and use it well.
The original authors of C and the first UNIX system present this concise and powerful guide to ANSI standard C programming. This version, building on Kerninghan and Ritchie's classic The C Programming Language, brings readers up-to-date with the finalized ANSI standard for C while teaching users how to take advantage of noted C features like economy of expression, its full set of operators and more. One reader claimed "Just about every C programmer I respect learned C from this book," while another raved that this book is the "Bible of C." This book is regarded by just about anyone in the C field as the canonical work on the C language and is essential reading for C programmers.
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:
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
Most C books are filled with dry and boring prose about C syntaxes, libraries, and pointers... until now. Written much like Libe's Life With UNIX book, van der Linden combines comical anecdotes as well as instructional programming tips on C. Informative footnotes on software dogmas, programming challenges, and handy heuristics are give facts, tips and tricks on C programming. Chapter eleven will digress a little into C++ language characteristics such as polymorphism, declarations, inheritances and multiple inheritances. The differences between "K & R" C and ANSI C are deftly explained as well as virtual and cache memory, stack segments under different platforms, and C arrays and pointers. A couple of anecdotes explain the $20 million bug held in the asynchronous I/O library, and the 1962 forced explosion of a $12 million rocket because of an error in programming. At the completion of this book you will not get a cookie, but you will get a Certificate of Merit (which is at the end of chapter 11) for burning the midnight oil studying this stuff. Don't be shocked if you find yourself wanting to read this book instead of having to read it!
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:
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.
This practical C tutorial has been updated and revised, and still focuses on the practical issues of clear and non-obfuscated code. It introduces and incorporates Integrated Development Environments (IDEs) for UNIX and Windows platforms, and leads you through the nuts & bolts of C and practical program writing concepts. The book examines declarations, expressions, arrays, decision and control statements, and guides you through the programming process, from setup and specification through coding, testing, debugging, revision and maintenance. You will also learn about functions and bit operations, types, pointers, file I/O and floating point operations. Additional coverage includes preprocessor directives, modular programming concepts, portability issues, and even recently implemented compiler changes in the areas of functions and libraries. The book really digs into C`s "dustier corners", primarily problems and solutions for do/while, goto, other operators and qualifiers. It relates your program to software engineering concepts, showing how to put it all together, from requirements and specification, to a functional description, expandability, final test and revision.
Programming in C, Fourth Edition is a newly revised and updated edition of Steven Kochan's classic C programming tutorial: a book that has helped thousands of students master C over the past 25+ years. This edition fully reflects current developments in C programming, including the latest version (C11). Crafted to help students master C regardless of their intended platform or applications, it includes substantial new coverage of mobile and gaming applications where C's elegance and speed make it indispensable.
Kochan brings a unique ability to connect with readers, understand their needs, and explain a language with exceptional clarity and relevance. Here, he begins with the fundamentals, then covers every facet of C programming: variables, data types, arithmetic expressions, program looping, making decisions, arrays, functions, structures, strings, pointers, operations on bits, preprocessors, I/O, and more. You'll find up-to-date chapters on writing larger programs; debugging, and object-oriented fundamentals. Appendices include a complete language summary; an introduction to the current Standard C Library; coverage of compiling and running programs using gcc; and avoiding common coding mistakes.
This edition contains improved examples and explanations, as well as new material on C-based object languages such as Objective-C (reflecting Kochan's unique experience as author of Programming in Objective-C 2.0, today's leading Objective-C tutorial).
C is one of the oldest programming languages and still one of the most widely used. Whether you're an experienced C programmer or you're new to the language, you know how frustrating it can be to hunt through hundreds of pages in your reference books to find that bit of information on a certain function, type or other syntax element. Or even worse, you may not have your books with you. Your answer is the C Pocket Reference. Concise and easy to use, this handy pocket guide to C is a must-have quick reference for any C programmer. It's the only C reference that fits in your pocket and is an excellent companion to O'Reilly's other C books.
Ideal as an introduction for beginners and a quick reference for advanced programmers, the C Pocket Reference consists of two parts: a compact description of the C language and a thematically structured reference to the standard library. The representation of the language is based on the ANSI standard and includes extensions introduced in 1999. An index is included to help you quickly find the information you need.
This small book covers the following:
The first edition of C Programming: A Modern Approach was popular with students and faculty alike because of its clarity and comprehensiveness as well as its trademark Q&A sections.
Professor King's spiral approach made it accessible to a broad range of readers, from beginners to more advanced students. With adoptions at over 225 colleges, the first edition was one of the leading C textbooks of the last ten years.
The second edition maintains all the book's popular features and brings it up to date with coverage of the C99 standard. The new edition also adds a significant number of exercises and longer programming projects, and includes extensive revisions and updates.