home *** CD-ROM | disk | FTP | other *** search
- Newsgroups: comp.lang.c
- Path: sparky!uunet!mcrware!tim
- From: tim@microware.com (Tim Wilson)
- Subject: Re: HELP ON C BOOK
- Message-ID: <1992Nov11.183616.23202@microware.com>
- Sender: news@microware.com
- Nntp-Posting-Host: vite
- Organization: Microware Systems Corp., Des Moines, Iowa
- References: <1992Nov7.020947.6467@usl.edu> <BxBusy.Ept@nic.umass.edu>
- Date: Wed, 11 Nov 1992 18:36:16 GMT
- Lines: 377
-
- In article <BxBusy.Ept@nic.umass.edu> jeff@titan.ucc.umass.edu (DarkShadow) writes:
- >In article <1992Nov7.020947.6467@usl.edu> cs460129@ucs.usl.edu (Martinez Velez Jose Carlos) writes:
- >>I'm trying to learn c and I wonder if anyone out there knows a good to
- >>learn c. I already know pascal and modula-2, so if anyone knows of a book
- >>relating any of this language to c, please sent me e-mail...
- >>
- >>
- >> E-mail: cs460129@ucs.usl.edu
- >> or
- >> fjl0014@usl.edu
- >>
- >>
- >I would be interested in this info as well. If anyone would like to
- >include my name on their mailing list, that would be great. Thanks a
- >lot.
- >
- > -Jeff
- >
- >--
- >Jeff Zabek email: jeff@titan.ucc.umass.edu
- >Computer Science Department gencon07@titan.ucc.umass.edu
- >University of Massachusetts
-
-
- Well, since I have already mailed this to about 5 other people, I
- decided to post it. This is a compilation of replies from when people
- asked for good books on this news group. Unfortunately, I do not have
- much knowledge with most of them, so I can't really recommend one over
- another (Except K&R of course :-)). I can't claim any sort of
- completeness, this was just as people suggested books, I added it(them)
- to the list. In case of duplicate entries, I merged the two together.
- There were several that had several recomendations (sorry, didn't keep
- the number of recomendations per book). By the way, each post is
- seperated by a '--'. Any way, here is the list:
-
- Binary Trees:
- Data Structures and Program Design in C
- Kruse, Leung, Tondo
- Prentice Hall
- It's a rewrite of Kruse's "Data Structures and Program Design",
- originally in Pascal.
-
- Data Structures Using C
- Tenenbaum, Langsam, Augenstein
- Prentice Hall
-
- Pascal to C experience:
- Algorithms+Data Structures = Programs
- Wirth
- Prentice Hall
-
- --
- "Using ANSI C under UNIX" & "C the Complete Reference" both from McGraw Hill
-
- "Programming with C" by Byron Gottfried
-
- "Practical C Programming" by Steve Oualline
- --
-
- David Spuler, James Cook University of North Queensland, Australia
- Author of "Comprehensive C", Prentice-Hall, 1992, pp416, ISBN 0-13-156514-1
- INTRO TOPICS: types, operators, structures, strings, fns, ptrs, files etc etc
- ADVANCED TOPICS: efficiency, debugging, style, portability, large programs
- A book which is intended for experienced programmers and covers both
- introductory issues and advanced issues - therefore it should wear
- well with C experience.
-
- It's contents are:
-
- PART I: The C Language
- 1 "Introduction to C"
- 2 "Variable declarations and types"
- 3 "Operators"
- 4 "Control statements"
- 5 "Structured types"
- 6 "Strings"
- 7 "Functions"
- 8 "Pointers"
- 9 "Input and output"
- 10 "File operations"
- 11 "The preprocessor"
- 12 "Standard library functions"
-
- PART II: Advanced Issues
- 13 "Large programs"
- 14 "Functions and pointers revisited"
- 15 "Efficiency"
- 16 "Debugging techniques"
- 17 "Program style"
- 18 "Portability"
- 19 "UNIX systems programming"
-
- --
- Victory at "C"
-
- --
- C: Step-by-Step
-
- --
- _Compilers: Principles, Techniques, and Tools_ by Aho, Sethi & Ullman (aka
- "The Red Dragon Book"). Chapter 3 is all about regular expressions, and
- how to construct their associated DFAs. (ISBN 0-201-10088-6)
-
- _Introduction to Automata Theory, Languages, and Computation_ by Hopcroft
- and Ullman. This is probably one of the canonical theoretical works
- in the field of membership recognition and computability. This covers
- such important results as the pumping lemma, and the Rabin-Scott theorem.
- (ISBN 0-201-02988-X)
-
- --
- Waite Group's 'C Primer Plus.'
- It is pretty much geared toward the beginning C programmer, but
- doesn't just skim the surface like most beginner books do. It is the
- book I used to learn C programming.
-
- --
- 'Teach Yourself C'
-
- --
- "C by Dissection" By Al Kelley and Ira Pohl
-
- --
- "Theory and Problems of Programming With C" by Byron S. Gottfried. It
- is published by Mc-Graw Hill under Schaum's OutLine Series.
-
- --
- Title: C Style, Standards and Guidelines
- Author: David Straker
- Publisher: Prentice-Hall
- Date of publication: 1992
- Pages: 231
- ISBN: 0-13-116898-3
- Contents: Part 1 : Basics
- 1. Standards
- 2. Psychological factors
- 3. General principles
- Part 2 : Commenting and Naming
- 4. Commenting
- 5. Naming
- Part 3 : Layout
- 6. Code layout
- 7. File layout
- Part 4 : Usage
- 8. Language usage
- 9. Date usage
- 10. Programming Usage
- Part 5 : Implementation
- 11. Implementing standards
- Appendix A : Example standard
-
- --
- INSTRUCTIONAL BOOKS
- ---
-
-
- The following three texts are written for experienced programmers, or at
- least for people who already "think" like programmers.
- ---
-
-
- [ ] "The C Programming Language" (1st ed.)
- Brian W. Kernighan & Dennis Ritchie
- 1978, Prentice Hall ISBN: 0-13-110163-3
-
- This was the first, and for many years the only, text on C. Written by
- the authors of the language, it was the cornerstone of early C
- development and is still humorously referred to as "The Old Testament."
- Although it is available in many bookstores, it is now drastically out
- of date. The only reasons for purchasing it at this point are
- historical interest, or a job which requires maintaining some very old
- software.
-
-
- [ ] "The C Programming Language" (2nd ed.)
- Brian W. Kernighan & Dennis Ritchie
- 1988, Prentice Hall ISBN: 0-13-110362-8
-
- This ("The New Testament") is the updated version of the original K&R
- (Kernighan & Ritchie) text, and can be distinguished by the words
- "Second Edition" and "ANSI C" on the cover in red. It includes the
- modifications incorporated by the ANSI standard, while retaining the
- nature of the 1st edition. If you are building a library of C books,
- this is the first one you should get.
-
-
- [ ] "C A Reference Manual" (3rd ed.)
- Samual P. Harbison & Guy L. Steele Jr.
- 1991, Prentice Hall. ISBN: 0-13-110933-2
-
- This text is widely used in industry as both a text and a reference
- manual for C programmers. It is somewhat more verbose than the K&R
- book, and also makes an effort to cover both ANSI and "traditional" C.
- A particularly good point of this book, in my opinion, is that the
- authors point out concerns relating to C implementations for different
- computers or operating systems. It also has a section on the ANSI
- standard library functions. If you are new to programming, this text
- might be a bit overwhelming.
-
- The remainder of the books in this section are oriented more towards
- instruction, and less experienced programmers, than the above three titles.
- ---
-
-
- [ ] "C A Software Engineering Approach" (2nd ed.)
- Peter A. Darnel & Phillip E. Margolis
- 1991, Springer Verlag ISBN: 0-387-97389-3
-
- Despite a few misprints, this is an excellent textbook for C. Major
- differences between ANSI and Pre-ANSI C are highlighted in large, hard
- to miss boxes. Also highlighted in boxes are common bugs which afflict
- both experienced and inexperienced C programmers. These boxes then
- have their own index. Particularly nice features include a
- diagrammatic syntax for the C language, a section on implementation
- limits, a listing of ANSI/K&R differences, a good, easy to read section
- on the standard library, and finally a section on good software
- engineering (which many C students could use). The last is accompanied
- by the source for a C interpreter, which is great example software.
-
-
- [ ] "A Book On C" (2nd ed.)
- Al Kelly & Ira Pohl
- 1990, Benjamin Cummings ISBN:0-8053-0060-0
-
- A more chatty book than many others, this book includes more examples
- and more detailed explanations than the texts above. The basics of the
- language are covered, as well as techniques such as linked lists and
- trees. Some specifics for MSDOS and UNIX are covered.
-
- [In another post someone said this about it:]
- - An excellent introduction to C with lots and lots of examples. Best of
- all, the authors took pain to 'dissect' those examples, ie go through
- them line by line of code explaining the various features of the language
- and expound on their usage. Each chapter has a good summary and the text
- is very clear and well written. It is concise and to the point. Readers
- can learn C in a self pace way. There is also enough advance topics for
- the more advance users.
-
-
- [ ] "The Waite Group's New C Primer Plus"
- Mitchell Waite and Steven Prata
- Howard W. Sams & Co. ISBN: 0-672-22687-1
-
- This has been highly recommended as a readable introduction to C,
- especially for those without a programming background. It steps
- through the basics with clear discussions and many examples.
-
-
- [ ] "Programming in ANSI C"
- Kochan
- Hayden Books ISBN: 0-672-48408-0
-
- Another book with multiple recommendations as being an excellent
- introductory text with frequent examples and good text.
-
-
-
- REFERENCE BOOKS
- ---
-
-
- [ ] "American National Standard for Information Systems -
- Programming Language - C"
- ANSI X3.159-1989
- 1990, American National Standards Institute
-
- This is the official standard for the C language, completed by ANSI in
- 1989. For language lawyers, this is THE source. Of particular
- interest is the rationale, published with the standard but not
- officially part of it. The rationale explains the reasoning behind
- many of the decisions taken by the committee, giving an insight into
- the standards making process.
-
-
- [ ] "Standard C"
- P.J. Plauger & Jim Brodie
- 1989, Microsoft Press ISBN: 1-55615-158-6
-
- This is a complete and inexpensive pocket reference to the language.
- It includes all standard features, the standard libraries, and a good
- section on portability. It could use a better index, but at $7.95 is a
- bargain as a reference.
-
- [ ] Turbo C/C++ the Complete Reference
- Herbert Schildt
- 1990, McGraw Hill ISBN: 0-07-881535-5
-
- If you MUST buy a manual specific to a particular C implementation,
- they are available. This book, for example, covers in great detail the
- implementation and extensions to standard C included in Borland's Turbo
- C package. Also included are explanations of the Turbo C development
- environment. Beware: This is neither a good textbook (there is no
- discussion of strings, for instance), nor is it a good description of
- standard C. Borland specific functions are intermingled with standard
- library functions, and you must really dig to determine the difference.
- Given these caveats, it is a reasonable reference to have on your desk.
- Similar books exist, I'm sure, for most C environments.
-
-
-
- MISCELLANEOUS BOOKS
- ---
-
-
- [ ] "The Standard C Library"
- PJ Plauger
- 1992 Prentice Hall ISBN: 0-13-131509-9
-
- Presents, justifies, and explains a complete implementation of the ANSI
- libraries. If you understand the language, but want more information
- on the standard libraries, this is the place to look.
-
-
- [ ] "C Traps & Pitfalls"
- Andrew Koenig
- Addison-Wesley ISBN: 0-201-17928-8
-
- An excellent book, describing many of the programming errors common in
- the C community. If you want your programs to work because the code is
- correct, rather than just through luck or trial and error, this is the
- book to read.
-
-
- [ ] C Programming Guidelines (2nd ed.)
- Thomas Plum
- 1989, Plum Hall Inc. ISBN: 0-911537-07-4
-
- This is a description of programming standards for C. It is formulated
- as a series of manual pages, each dealing with a separate issue. While
- it makes for rather dry reading, it is a good starting point for either
- someone new to C style, or someone developing a C standard for a new
- project. For corporate accounts, the manual pages are available in
- electronic form from the publisher, should you wish to include them in
- your own company standard.
-
-
- [ ] "The C Puzzle Book" (2nd ed.)
- Alan R. Feuer
- 1989, Prentice Hall ISBN: 0-13-115502-4
-
- Discusses C from the viewpoint of "what does the following code
- produce?" Lots of interesting and testing puzzles, with answers. I
- have not yet read the second edition, but assume it is similar to the
- first, updated for ANSI C.
-
-
- [ ] "Numerical Recipes in C"
- Press, Flannery, Teukolsky, & Vetterling
- 1988, Cambridge University Press ISBN: 0-521-35465-X
-
- This is a real tome! Most C projects do not center around heavy
- numerical calculations, but if you need to do that type of work, this
- book can be invaluable. Be warned, though, this is not light reading!
- A companion volume of the example code is available, as are disks with
- the software.
-
-
- [ ] "Indian Hill C Style and Coding Standards"
- Cannon, Elliott, Kirchoff, Miller, Milner, Mitze, Schan, Whittington
- 1990, Bell Labs
- --
- That's all I have right now. Gee, since this seems to be an FAQ, maybe
- it could be added to it? (Of course, it should either be trimmed down
- to the truly good books, or expanded when someone else suggests one).
- Until it is added, I will try to keep a list of suggested books. If you
- or someone you know wants the updated list, please feel free to email a
- request to me. My email address is in my .sig file. Happy reading!!!
-
- .sig
- ------------------------------------------------------------------------------
- = Please note that the babbling found within is just me babbling and not
- = Microware's. Of course, you already new that. (Or, am I babbling again?)
- =
- = Tim Wilson.
- = (UUCP: ...!uunet!mcrware!timwil)
- = (Internet: timwil@microware.com)
- ------------------------------------------------------------------------------
-
-