25 of 25 people found the following review helpful:
5.0 out of 5 stars
Excellent book for Learning C, January 13, 2001
Let's make things clear: This book teaches the ANSI C Programming Language.
It does not teach any of the following...
* Windows Programming
* Algorithm design
* Object Oriented Programming
* C++
* Advanced Programming
In 1996, when I first began to learn programming, I bought the first edition of this, along with about 5 books. Very quickly I had set all the rest aside.
In 5 years, it is the best book on pure C programming I had found, and I still refer to it on occasion.
It does not burden the reader with unnecessary abstract explanations. Nor does it gloss over features. This is not a Dummies Book. A novice may need to pore over certain sections repeatedly before some of the more complex concepts "click". But by dilligently compiling the examples, and attempting the practice exercises, the reader can gain a thorough understanding of C.
Thanks in part to this book I am now pursuing a successful career in software engineering. End of story.
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No
9 of 9 people found the following review helpful:
4.0 out of 5 stars
Easy and complete, January 10, 2000
By A Customer
I found the book to be well-written, easy to follow and the examples more or less accurate for most compilers. As an introduction to the C language, the book contains a suprising amount of in-depth material, but it is primarily an introductory course. The accompanying CD contains a pre-assessment and post-assessment test, both of which contained 1 or 2 erroneous answers. Hopefully these errors will be corrected in future editions. Also, the assessment tests were fairly elementary and did not cover all of the material presented in the course. The CD also contains all of the source code used in the text.
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No
14 of 16 people found the following review helpful:
5.0 out of 5 stars
This book does a great job of teaching C., June 20, 2000
By A Customer
I think this book does a great job of teaching the C language. And I am going to be frank about those people who gave it low reviews: They simply lack the necessary pre-requisite knowledge to understand programming.
If you don't know what a program is, etc, you are not ready to learn programming. You need to learn the basics of how computers work first.
Second, to the person who said "I couldn't get anything to work". Obviously, you were doing something wrong as most of the examples work fine with no modifications on a wide varity of platforms and compilers.
Yes I did find some errors in the included code samples. But although I have not yet completed the book, it appears to me that by the time a reader gets to the sample code with errors, they should already have enough knowledge from reading the material to find the errors and fix them.
For example, listing 5.5 fails to pass an argument when it calls a function. However, by the time you get to this section of the chapter, if you were paying attention, you should already know enough about functions to see that this program is obviously not going to work unless an argument is passed to the function being called. And you should also already know enough to figure out what argument you need to pass. If you don't catch the problem while entering the code, you should certainly see what the problem is when the compiler generates an error message when you try to build the program.
There are also a few programs that although they work under most compilers, would work better under some with a few modifications.
I use the Type & Run 2 example, which is a number guessing game. The book uses variable type "int" to store the number you have to guess.
Well, my FreeBSD box is a 32bit system instead of a 16 bit system. As such, variable type int is 4 bits long instead of 2 like on DOS compilers. This makes for a number guessing game with over 2 billion possible numbers. A pretty futile number guessing game in my opinion. However, once again by this time, if you are paying attention, you should know the variable type sizes of your system. And you should also be able to figure out a way to fix this program if you were paying attention. It is a simple matter of using a different variable type to store the number you have to guess. By this point in the chapter, you should know how to do this if you were paying attention.
All in all, I think this book does a great job, and the few examples that do contain errors or need modifications to work well on particular systems all come after you should already have enough knowledge to fix them.
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No