Home :: Books :: Computers & Internet  

Arts & Photography
Audio CDs
Audiocassettes
Biographies & Memoirs
Business & Investing
Children's Books
Christianity
Comics & Graphic Novels
Computers & Internet

Cooking, Food & Wine
Entertainment
Gay & Lesbian
Health, Mind & Body
History
Home & Garden
Horror
Literature & Fiction
Mystery & Thrillers
Nonfiction
Outdoors & Nature
Parenting & Families
Professional & Technical
Reference
Religion & Spirituality
Romance
Science
Science Fiction & Fantasy
Sports
Teens
Travel
Women's Fiction
C Primer Plus (4th Edition)

C Primer Plus (4th Edition)

List Price: $39.99
Your Price: $27.19
Product Info Reviews

<< 1 2 3 4 >>

Rating: 5 stars
Summary: Intermediate Programmer Friendly
Review: Stephen Prata's C Primer Plus is one of the better C manuals, & likely one of the best for self-teaching. Clean, well written, & flaw free the text has held up very fine & remains so in its 4th Ed. While there may be some dispute over tastes in styles, I'm the most comfortable w/Mr. Prata's; however, there's little doubt C Primer Plus is one of the best.

For beginning users who know enough C to get into trouble, this is the perfect manual for learning the building blocks of the language. Personally, I wouldn't recommend it for total newbies to programming--learn PASCAL & some HTML first. Nor would I propose Mr. Prata's offering to beginner or novice programmers--instead try Greg Perry's excellent C by Example ISBN 0789722399. However, for Intermediate programmers w/a bag of programming hacks wanting to take their skill to the next level, C Primer Plus is invaluable asset.

Mr. Prata--B.S from Cal Tech & Ph.D. from UC Berkeley & a professor of physics & astronomy, who also teaches programming--brings his vast wealth of experience in programming to impart a complex subject in plain English while incorporating the language of C in a reader friendly fashion. Further, while his tone is conversational, tongue-in-cheek verbiage is kept to a minimum w/98% of the text focused purely upon teaching the C language. No overt 'hey, I'm so funny' attempts @ lame humour--though when he does offer up a sharp, but short, quip, it's worthy of the subject & assists in driving home his point.

As the book is laid out in a logical, reiterative--introducing topics & returning to discuss them more in-depth--it's possible to skip about, but only if one is comfortable w/the subject. However, for someone like me starting from just a couple of levels above newbie, chapter hopping may not be such a good thing.

Illustrations are pertinent & represent enough information to visually explain the concepts w/o extraneous & confusing material. Sidebars are rare, but when they occur, there's good reason & they're definitely worth the read.

Chapters & their content are grouped appropriately, w/subjects first explained by a sample programme & Prata challenging the student by asking "what's new here?" however, he doesn't obfuscate the point. It's refreshing to see concepts from the previous chapter & the incorporation of the new information before reading an explanation of the new data & remaining clueless until an author finally decides to demonstrate. Further, Prata takes a bulleted approach to explain the main points, thus saving a long rambling diatribe.

After the introductory new concept, Prata uses the rest of the pages to explain in detail what is happening w/the new information. His step-by-step analysis is built upon the knowledge from previous chapters, ergo; he's not wasting an inordinate amount space explaining each line item. This caused me some trouble, as I had to flip back to previous pages in order to stay abreast. However, this is not detrimental as it serves to reinforce the foundation of the subject material.

Each chapter concludes w/review questions & programming exercises. Both are worthy of the student & appropriately don't underestimate or overestimate the learner's ability--though the review questions can be a tad confusing due to wording. Mr. Prata adds extra challenges further into the book--as the material becomes more complex the exercises become trickier. Yet, there's no reason why some refresher reviewing won't assist in completing the exercises.

Through the book, Mr. Prata consistently stresses the differences between ISO/ANSI C99 & C90 standards. The author kept in mind that not all beginners have compilers incorporating the latest & greatest ANSI. Included w/these comments are workarounds--C is flexible after all--thus allowing students the opportunity to complete exercises found @ the end of each chapter.

One thing really impressing me is Mr. Prata's move to educate the user in defining their own prototyping functions by introducing & constantly employing user-defined functions--C's elegantly flexible structures are fully mutable as the author demonstrates throughout the book. Unlike other C manuals where the focus is on existing libraries & barely touching upon the powerful ability to make the language walk & talk exactly to the programmer's whims.

Ultimately, Stephen Prata's C Primer Plus is an impressive book & worthy of 5 stars. It's a seriously comprehensive compendium for starting C & becoming conversant enough in the language to move on to greater feats w/this portable, lean, & clean language.

Rating: 5 stars
Summary: Great for C and C++ers!
Review: Talk about a great book, This book is 1 in a million it teaches you everything you need to know, Prata is a great teacher, If you don't already have this book and your intrested in C/C++, THIS BOOK IS FOR YOU!

Rating: 5 stars
Summary: I really like the author's writing style.
Review: This book does have some typos, but overall I strongly praise the author's writing style which helped keep my interest and made me eager to learn more. I definitely agree with the review from Robert@MartensFamily.com .

Rating: 4 stars
Summary: Good for the beginner to C programming
Review: This book gives a fairly comprehensive overview of the most popular programming language ever employed. The C language still dominates the programming scene, even though at times it appears to be dying out. Compilers, embedded systems, scientific programming, and myriads of other applications use C extensively.

After a brief historical background and a discussion on how to compile programs in C, the author discusses the basic data types and character strings in C. The author emphasizes the lean nature of the C language, and gives an elementary discussion on debugging in C. A good discussion is given on integer and floating-point underflow and overflow and also the mechanics of argument passing via the stack.

The author then discusses the operators and control statements in C. He includes a discussion of Lvalues and Rvalues, and this is helpful since many books on C gloss over this. Good examples of the ability of C to do multiple assignment are given. Side effects, which are modifications of data objects, and sequence points, which are points in program execution at which side effects are evaluated before proceeding to the next step in the program, are briefly discussed. An understanding of side effects is crucial to programming effectively in C. Type conversion, forbidden in some other languages, can be done in C, and the author gives a fairly good discussion of type conversion and the cast operator. Nine examples are given that effectively illustrate the different uses of "for" loops. Unfortunately, the author includes a discussion of the "goto" statement, but does admonish against its use.

The author then moves into more about input and output and how to use buffered versus unbuffered input. Some of the discussion on how to create user interfaces is antiquated given the current state of graphical tools to do this.

C functions are defined and their use encouraged as building blocks. A program ideally should be written as a collection of function calls, and the author is sympathetic with this approach. The importance of function prototyping is discussed, along with a detailed discussion of recursion. The &operator is covered in the context of function calls the modify a value in the calling function without using a return value. This peculiarity of C is a sticking point to mathematicians when they attempt to program in C. The author explains fairly effectively the reasons for doing this in C, giving examples of what can happen when one adheres to a practice of never producing side effects in function calls.

The most difficult feature of C for newcomers is the existence of pointer variables. These are first discussed in the context of function calls and then in terms of the creation and initialization of arrays. Pointer arithmetic, an anathema to some programmers is given a fine treatment, along with how pointers are used to manipulate character strings and string functions.

The file communication capability of C is given a lengthy treatment in the book via standard I/O functions. The ability of C to support both global and local variables is discussed, with the important concepts of file, block, and function prototype given detailed treatment. The volatile, const, and restrict keywords are discussed also.

Data structures, the tour de force of C programming, is discussed in great detail by the author. He shows how to create nested structures, and most importantly how to define and use pointers to structures. This is one of the most powerful features of C, and is responsible for its continued use in performance-intensive applications.

Readers interested in the more "low-level" features of C will appreciate the discussion on bit fiddling. Indeed in embedded systems and cryptography an understanding of this is crucial for designing effective programs.

The important technique of conditional compilation, using the ifdef, else, endif, and ifndef directives are discussed with many helpful examples. Memory allocation, with malloc(), free(), and calloc() functions is given ample treatment. Anyone who has done any type of debugging of C applications will realize the importance of a complete understanding of this topic. Memory leaks and dangling pointers can cause great distress in applications written in C. The author should have spent more time here on dynamic memory allocation in C.

Some discussion is given on the more advanced data structures in C, such as linked lists, abstract data types, and binary trees.

Rating: 5 stars
Summary: Easy to read, very informative
Review: This book is a great way to learn C. It doesn't baby the reader (I'd recommend having just a bit of programming background before reading it), it's easy to read, and it's very comprehensive. Once you're done with this book, you're just about ready to get into API programming. The book is organized very well, in that that Prata will gloss over a fact, giving you just enough knoweledge so as not to overwhelm you. Then, he'll return to the information later on, covering it in much deeper detail. This is a much better way to learn, since you have a varied skill set early on, instead of simply learning large amounts of information one topic at a time. It's also much easier to build on what you've learned since it's had the time to ferment in your mind. The book also has the best library reference out of any tutorial style book I've seen. The only problem is the repeated use of flawed functions, such as gets, scanf, strcpy and the like. He points out the flaws, but then completely ignores his own warnings! Of course, reading a more advanced book will cover in depth the flaws of these functions and discourage their use, but bad habits learned early on are hard to break. Overall, though, a great book! If I could, I'd give it a 4.5, but since I can't, I'll be generous and give it a 5. Also check out his C++ Primer Plus.

Rating: 5 stars
Summary: Best C Book Ever !
Review: This Book is on of the best C books ever, I have recommended it to all my freinds , so now I am recommending it to you ! Its easy to understand and a great resource for anyone who wants to learn C or C++ . If you want to master C , this is the BOOK for you !

Rating: 5 stars
Summary: Best C book!
Review: This book is simple enough for the beginning programmer and advanced enough to get you a very solid base in C. It is the best programming book I've read. I cant tell you how helpful it is. In my book all errors have been fixed and since I bought it a few months ago so there should'nt be any errors left anymore. The code for the book is easily attainable through Sams online website www.samspublishing.com too. Excellence!

Rating: 2 stars
Summary: review
Review: This book is too wordy. The programming excercises at the end of each chapter, in many cases are poorly worded. Additionally, the book does a poor job on file input / output and pointers. I definately would not recommend this book to learn pointers and file input/output.

Rating: 4 stars
Summary: C Primer Plus
Review: This is a great book. It has clear explainations and examples and it moves forward fairly evenly. Unlike many beginner's books, this book is thorough and does not dwell on topics or redundant examples. This book is for any beginner or intermediate programmer that wishes to build a serious C programming foundation.

Rating: 5 stars
Summary: If you need to be introduced to C...
Review: This is the book that you want.
This book covers enough for you to use the language well, and it is quite detailed. In fact, this book is great teaching material for people who wanted to learn C. Not to mention the appendix covers many of the library function that came with a typical compiler, and the explanation throughout the book is clear, and easily understood.
Prata's C Primer Plus, and C++ Primer Plus, is essential for any programmer who wants to learn C/C++. Once you grasp the basics of the language, you would still want these books for reference.


<< 1 2 3 4 >>

© 2004, ReviewFocus or its affiliates