The C Programming Language (2nd Edition)
|
| List Price: | £31.95 |
| Price: | £19.16 & eligible for FREE Super Saver Delivery on orders over £5. Details |
Availability: Usually dispatched within 24 hours
Dispatched from and sold by Amazon.co.uk
64 new or used available from £12.00
Average customer review:Product Description
This second editon describes C as defined by the ANSI standard. This book is meant to help the reader learn how to program in C. The book assumes some familiarity with basic programming concepts like variables, assignment statements, loops, and functions. A novice programmer should be able to read along and pick up the language.
Product Details
- Amazon Sales Rank: #13610 in Books
- Published on: 1988-04-01
- Original language: English
- Number of items: 1
- Binding: Paperback
- 274 pages
Editorial Reviews
Amazon.co.uk Review
An indisputably classic computing text, Kernighan and Ritchie's The C Programming Language, 2nd Edition, is the standard reference for learning and using ANSI C. Written by the co-inventors of C, this concise tutorial has a well-deserved reputation for clarity and precision as it defines one of the most successful programming languages of all time. It's an essential reference, which will be useful for beginners and experienced programmers alike.
This masterful tour of C features concentrates on essential programming constructs, from the basics--such as data types, variables, operators and flow control--to more advanced topics. Short, effective programming samples are the rule here. (Many samples work with strings and text files). Along the way, the authors don't shy away from the thornier C topics. For example, when discussing pointers, they look at pointers to pointers and even pointers to functions. Later in the book, they offer useful code for a flexible memory allocation scheme and a binary tree. The text concludes with the formal specification for C and a compact listing of the functions in the C standard header files.
C is still a great first programming language, and its influence is felt in Java and C++, both of which support many programming constructs based on C, while adding support for objects. The C Programming Language is still an excellent reference to one of our most successful and efficient programming languages. It's a book that deserves a place on the bookshelf of any C/C++ developer, regardless of your experience with the language. --Richard Dragan, Amazon.com
Topics covered:
- overview of ANSI C
- introductory language tutorial
- data types
- variables
- arrays
- operators and operator precedence
- flow control
- functions
- header files
- recursion
- macros and the C pre-processor
- pointers and arrays
- advanced pointer types (pointers to pointers, pointers to functions)
- multidimensional arrays
- structures and unions
- dynamic memory allocation
- console and file I/O
- UNIX file functions
- Formal description of the standard C language
- Reference to C standard library header files and functions
Amazon.co.uk Review
Just about every C programmer I respect learned C from this book. Unlike many of the 1,000 page doorstops stuffed with CD-ROMs that have become popular, this volume is concise and powerful (if somewhat dangerous)--like C itself. And it was written by Kernighan himself. Need we say more? --Amazon.com
From the Back Cover
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.
Customer Reviews
A programming classic
If you read a lot of computer books, you can easily tell the good ones: they are frequently cited. Well, this book is frequently cited. You even find references to it in computer books that have nothing to do with C programming. That fact should tell you something.
I learned C from this book, and I have to agree with the authors that cite it--it's a good book. I have yet to see its equal for brevity, elegance, and completeness in teaching C programming. If you are a programmer who wants to learn C, then ignore the rest and read the best.
One warning though--this is not a book for beginners. As Kernighan and Ritchie say in the preface: "The book is not an introductory programming manual; it assumes some familiarity with basic programming concepts like variables, assignment statements, loops, and functions. Nonetheless, a novice programmer should be able to read along and pick up the language, although access to a more knowledgeable colleague will help." If you are a complete novice, heed their warning. If you don't have access to a more knowledgeable colleague, you will probably be better off selecting an easier book.
The most elegant programming book I have ever read
This book is not "for Dummies". It assumes that you already have some knowledge of structured programming languages (i.e. Pascal). For example, this book spends four well-written pages explaining everything you need to know about functions. If you don't know what a function is, this will clearly not be enough. However, if you do know about functions, this book will not drone on and on for an entire chapter or two on the subject like some of the foot-crunching tomes the size of an encyclopdia.
The book is expensive ($40) for its size (approx. 250pgs.), but it is worth every penny. To quote the authors: "C is not a big language, and it is not served well by a big book."
As a bonus, almost anything you need to know about C can be found in seconds using the excellent index. It should be noted that this is a language reference and will NOT tell you how to use your editing environment or compiler.
In summary, intermediate or advanced programmers should be able to learn C with reasonable proficiency in a short amount of time.
A masterpiece
It is difficult to avoid cliches when talking about this book - it is just so good, that one can't help heaping superlatives on it.
This book is affectionately known as 'K & R', after the names of the authors, and it is almost definitely the most widely respected of all books on any given programming language.
This is the book that introduced the 'Hello World!' program to the world :-), which is now practically a standard first program in any introductory book on any programming language.
This is straight from the creators, and the implied authority, while an excellent reason in itself for taking a look at the book, pales in comparison to its other merits - brevity & clarity being foremost.
This book is best appreciated if you already have some programming background - i say this from experience, since i knew Fortran 77 & Pascal before i learnt C, and the knowledge of Pascal, in particular,made it much easier for me to pick up C than classmates for whom it was the first programming language.
Of course, if you're new to programming, you could still try learning from this, but it might be a bit of a struggle. If so, the books by Kelley & Pohl, K.N.King or Gottfried(Schaum series) may be useful for 'getting upto speed' with C first, and then coming to K & R.
C is the one language which is both 'high level' and 'low level' at the same time - to date, it is the nearest to the ideal of a programming language that is easy enough in description to be followed by human readers, and at the same time close enough to the machine's language to be executed fast.There are faster languages, to be sure - assembly language is necessarily faster than any high level language. But just try coding a reasonably involved program in assembly, or even reading such an effort ! There are other languages which might be 'easier' for people to read, but they are slower(C++,Java,etc,etc).
It is also the 'mother' of all modern biggies - C++ owes even its very name to C, Java was derived from C++, and Perl is **written** in C !!
So knowing C would give you a better appreciation of the other languages as well.
And it's still the language of choice for systems programming - so no systems programmer can afford to be a non-expert at C.
Anyway, back to the book - and what a book it is! The authors are not just great programmers, they are outstanding writers as well.
The book is just 274 pages, but it will teach you more than most thick 'tomes' on programming could ever possibly teach.
And no, that doesn't imply that it's 'dense' or abtruse. The authors choose their words judiciously, and there is not a word out of place.The book is designed to make you think, for there is no better way of learning than to think things out for yourself.
Reading the carefully worded text and working out the compact examples will teach you a lot - if you can go through all the exercises, well then you'll surely be an expert when you finish the book. I never did, but i learnt enough to implement several projects in C over the past six years, right from searching and sorting to cryptography and speech recognition.
The examples in this book are a thing of beauty (and therefore a joy forever!!). Elegance, in one word.
It has that universal characteristic of a great book - no matter how many times you read it, you'll learn something new.
You may buy several other books for specialized purposes of particular projects, but when you want to get into the nitty-gritty, to clarify any elusive points, you'll return here, to 'the word of the law', as laid out by the creators of the language.
Basically, if you program in C, you've just got have this book -
and once you have it, you'll find it indispensable.




