Objects First


Text List

The following table lists some C texts which you could consider using for this course. They have been ranked roughly in order of suitability and the bookshop has been asked to stock some copies of at least the first 4 books.

Some C texts (in rough order of suitability)
AuthorsTitleDate ISBNANSI C?
ANSI library?
Comments
A Kelley and
I Pohl
C by Dissection 19960-8053-3149-2 Yes
Appendix
Generally quite good
Introduction to C++ also
H M Deitel and
P J Deitel
C: How to Program 19940-13-288333-3 Yes
Appendix
Generally quite good
Includes portability tips
Some bad (monolithic!) programs
Introduction to OO (Ch 15!)
P A Darnell and
P E Margolis
C: A Software Engineering Perspective 1996 0-387-94675-6 Yes
Appendix A
OK
Token commitment to software engineering.
R House beginning with C 19940-17-008821-9 Yes
Appendix
Common functions only
Some object coding style
C++ differences mentioned
R Johnsonbaugh and
M Kalin
Applications Programming in ANSI C 19930-02-360951-6 Yes
"Some C functions"
Syntax diagrams
Some poor coding style
Comments based on 2nd ed, 3rd ed may be better (0-02-361141-3)
T Adamson,
J L Antonakos and
K C Mansfield
Structured C for Engineering and Technology 19950-02-300812-1 Yes
Scattered
Linked to some implementations
Some silly examples
P S Wang An Introduction to ANSI C on Unix 1992 0-534-14232-XYes
Brief
Strong orientation towards Unix
May appeal to systems programmers
S C Lawlor ANSI C Programming 1995 0-314-02830-7Yes
Partial
Poorly structured examples
Plenty of magic numbers in examples!
L Miller and
A Quilici
C Programming Language:
An Applied Perspective
1987 0-471-82560-3NoPre-dates ANSI standard
R Kruse
C L Tondo and
B Leung
Data Structures and Program Design in C 19970-13-519000-2 Yes
No
Data Structures Text
(not for learning C)
Emphasises ADT (OO) style of coding

Notes

  1. ANSI C is required in CLP110 and subsequent units in the BE(IT). Therefore purchasing an old (generally pre-1990) text is not advisable.
  2. A full reference for the ANSI C standard libraries is a very useful part of any C text. These functions should be available on any good compiler on any system. Since this is something that you will always need to look up (even when you understand the C language!), putting it in an appendix seems a good idea.
  3. The notes in the comments column are - obviously - brief. They may well underrate the value of some texts.
These texts have been roughly ranked in order of their suitability. However you may well find that my idea of a simple clear way of setting out and explaining things is different from yours, so that the texts at the top of the list are not necessarily best for you.

This list is far from exhaustive and there are other good or useful texts. Key requirements are ANSI C coverage, a good reference list of the ANSI standard library and good programming practices. Unfortunately some texts seem to be more concerned with showing you how to 'hack' in C than produce the well-designed, readable, maintainable code that we are trying to teach you to produce routinely in CLP110. These texts are sometimes recognisable by their 'cute' titles such as "C in 7 days", "C for dummies", etc. Needless to say, you should eschew such texts: the superficial attraction of producing some 'cunning', 'nifty' or [insert your own adjective here] code will waste days of your own time and have a negative effect on your professional reputation.

Back to the Table of Contents
© John Morris, 1999