Nitty Gritty C
||Author: Klaus Schröder|
List Price: $31.99
Our Price: Click to see the latest and low price
Publisher: Addison-Wesley Pub Co (30 November, 2001)
Sales Rank: 931,249
Average Customer Rating: 2.5 out of 5
Customer ReviewsRating: 1 out of 5
Frustratingly Poor Index
The index in this book is next to useless, the index is only 4 pages long and doesn't include any standard functions. So if you want to know the various format options to printf for example, you have to leaf through to find the right page in the appendix. Once you've found the entry in the appendix, there is no summary of the function, just a prototype and a Chapter number. So to get to a good description of a function, you find the appendix, leaf through it to find the most appropriate chapter and then leaf through that chapter. Totally unacceptable for a book marketed at the experienced programmer.
Sections are called "Start Up!", "Take That!" and "Go Ahead!", which illustrates how unhelpful and inappropriate the layout and format of this book is.
Rating: 4 out of 5
Very good initial exposure to the language
In my opinion, C is an easy language to learn, but one of the hardest to program well in. The flexibility of the language and the relative lack of rigid compiler rules make it easy to make mistakes that are subtle and difficult to find. In general, it takes an extensive amount of time before one can be considered proficient in the language. Most people learn to code a certain way and keep those habits, good and bad, throughout their programming careers. For these reasons, your initial study of any language is critical.
This book is designed to be a first exposure to the language and it covers all the standard features of C that should be presented. That of course makes it no different from the many other books on C that have been published over the past few decades, although there is a bit more coverage in this one than in others. The primary point of distinction between books in C is the tone and format, areas where this book is certainly above average. There is none of the compact, obfuscated code that some programmers seem addicted to, as the author goes to great lengths to point out the dangers of that approach. No specific style is emphasized, a point that I found refreshing, as personally, I am very tired of hearing passionate arguments over insignificant points of style. I was also impressed by the greater than normal treatment of the actions of the C preprocessor. This is a topic that is often neglected, which is unfortunate, as many of the more subtle bugs that I have dealt with were due to "unexpected" behavior based on the actions of the preprocessor.
The examples are small, which is generally good, and there are many of them, with exercises at the end of the chapters. Unfortunately, there are no larger examples that can demonstrate how the solutions to more complex problems are put together. Nearly all modern programming projects are measured in millions of lines of code, so putting together a few projects of a couple hundred can at least give the hint of how software is really built.
In general, the book is a solid introduction to the C language and if you are in need of such a book, this one will serve you well.
· Exploiting Software : How to Break Code
· Code Complete
· Code Reading: The Open Source Perspective
· Designing With Web Standards
· Hack I.T.: Security Through Penetration Testing