REVIEW - Programming in C


Programming in C


Stephen G. Kochan



Sams (2005)




Giles Moran


February 2005



Programming in C is in its third edition and having read it I can see why it is popular. The book is aimed at the novice programmer and uses examples and exercises to reinforce each new point.

The early chapters take the reader through concepts such as compilation, variables, expressions, decision-making and loops. The layout of each chapter is clear with a number of good examples that clearly illustrate each point. Exercises for the reader close each chapter.

The reader is then introduced to arrays and functions. It is good to see concepts such as 'const' and recursion in the early chapters and not relegated to an advanced chapter located near the end of the book. C specific topics follow, with structures character strings and pointers covered in good detail. Chapters on bit operations and the preprocessor follow and these are welcome additions. Most of the introductory C books I have seen skip these features. Chapters on data types, file IO and advanced features (unions, dynamic memory allocation) ensue. The dynamic memory allocation part of the advanced features chapter should have been greatly expanded, as I do not think you can write meaningful C programs without understanding this. Four pages are obviously not enough.

The final chapter on object-oriented programming is odd, as I am reading a book on C when C++ and C# code appears. By all means, have a chapter on how to write OO C but this chapter should have been dropped and more examples on C programming paradigms could have been added.

The book concludes with a very useful appendix covering the C language and the standard library.

This is a good introduction to the C language for a beginner. It is only let down by the lack of discussion on dynamic memory allocation. Recommended for those seeking a gentle introduction to the C language.

Book cover image courtesy of Open Library.

Your Privacy

By clicking "Accept Non-Essential Cookies" you agree ACCU can store non-essential cookies on your device and disclose information in accordance with our Privacy Policy and Cookie Policy.

Current Setting: Non-Essential Cookies REJECTED

By clicking "Include Third Party Content" you agree ACCU can forward your IP address to third-party sites (such as YouTube) to enhance the information presented on this site, and that third-party sites may store cookies on your device.

Current Setting: Third Party Content EXCLUDED

Settings can be changed at any time from the Cookie Policy page.