When comparing The C Programming Language (AKA: K&R) vs C Programming: A Modern Approach, the Slant community recommends The C Programming Language (AKA: K&R) for most people. In the question“What are the best resources for a beginner to learn C?” The C Programming Language (AKA: K&R) is ranked 1st while C Programming: A Modern Approach is ranked 2nd. The most important reason people chose The C Programming Language (AKA: K&R) is:
This book is so well known that it's affectionately called "K & R", after the authors. It's been cited in many other books and is familiar to most, if not all, CS students.
Ranked in these QuestionsQuestion Ranking
Pro Well known classic
This book is so well known that it's affectionately called "K & R", after the authors.
It's been cited in many other books and is familiar to most, if not all, CS students.
Pro It's excerpted from the idea of its creators
This book is written by Dennis Ritchie, who was one of the main people behind the development and design of C and UNIX.
Pro Creative, challenging exercises
The challenges at the end of each chapter do a great job of requiring many of the skills learned up to that point. Completing the challenges is a great way of insuring you understand the material.
Pro Challenges your way of thinking
The book really challenges you to think like a programmer by constantly asking questions that force you to solve problems, rather than telling you how to solve the problem and only asking you to write the syntax.
Pro Written in a very clear, understandable way
The author breaks things down into small pieces and uses examples to explain everything in a very clear way.
Con Not for beginners
Assumes familiarity not only with programming concepts but some C language specifics.
Con Out of Date
Some commands and practices are out of date, so errata and googling is needed while going through the book.
Con Teaches bad style
The K&R style works for old Unix mainframe command-line programs that exit after a simple task and leave the cleanup to the OS; where input is only from trusted experts; and most functions are only called internally to the program. The environment is very different today. This style will get your server owned by hackers, or crash it due to a memory leak, etc. You will have to unlearn what you've learned from this book to use C correctly in the real world today.
Con Answers to exercises aren't provided
The exercises throughout the book don't have the exercises provided, which may be a con to beginners.