Jump to content
 







Main menu
   


Navigation  



Main page
Contents
Current events
Random article
About Wikipedia
Contact us
Donate
 




Contribute  



Help
Learn to edit
Community portal
Recent changes
Upload file
 








Search  

































Create account

Log in
 









Create account
 Log in
 




Pages for logged out editors learn more  



Contributions
Talk
 



















Contents

   



(Top)
 


1 History  





2 Reception  





3 Influence  





4 See also  





5 References  





6 External links  














The C Programming Language






العربية
Čeština
Dansk
Deutsch
Ελληνικά
Español
فارسی
Français
Bahasa Indonesia
Italiano

Norsk bokmål
Polski
Português
Русский
Српски / srpski
Svenska
Українська
Tiếng Vit

 

Edit links
 









Article
Talk
 

















Read
Edit
View history
 








Tools
   


Actions  



Read
Edit
View history
 




General  



What links here
Related changes
Upload file
Special pages
Permanent link
Page information
Cite this page
Get shortened URL
Download QR code
Wikidata item
 




Print/export  



Download as PDF
Printable version
 




In other projects  



Wikimedia Commons
 
















Appearance
   

 






From Wikipedia, the free encyclopedia
 


The C Programming Language
Cover of the first edition.
AuthorBrian Kernighan
Dennis Ritchie
LanguageEnglish
SubjectC programming language
PublisherPrentice Hall

Publication date

1978 (1st Edition)
1988 (2nd Edition)
ISBN9780131101630

The C Programming Language (sometimes termed K&R, after its authors' initials) is a computer programming book written by Brian Kernighan and Dennis Ritchie, the latter of whom originally designed and implemented the C programming language, as well as co-designed the Unix operating system with which development of the language was closely intertwined. The book was central to the development and popularization of C and is still widely read and used today. Because the book was co-authored by the original language designer, and because the first edition of the book served for many years as the de facto standard for the language, the book was regarded by many to be the authoritative reference on C.[1][2]

History[edit]

C was created by Dennis RitchieatBell Labs in the early 1970s as an augmented version of Ken Thompson's B.[3] Another Bell Labs employee, Brian Kernighan, had written the first C tutorial,[4] and he persuaded Ritchie to coauthor a book on the language.[5] Kernighan would write most of the book's "expository" material, and Ritchie's reference manual became its appendices.

The first edition, published February 22, 1978, was the first widely available book on the C programming language. Its version of C is sometimes termed K&R C (after the book's authors), often to distinguish this early version from the later version of C standardized as ANSI C.[6]

In April 1988, the second edition of the book was published, updated to cover the changes to the language resulting from the then-new ANSI C standard, particularly with the inclusion of reference material on standard libraries. The second edition of the book (and as of 2024, the most recent) has since been translated into over 20 languages.[7] In 2012, an eBook version of the second edition was published in ePub, Mobi, and PDF formats.[8]

C was first standardized in 1989 (as ANSI X3.159-1989) and has since undergone several revisions. However, no new edition of The C Programming Language has been issued to cover the more recent standards.

Reception[edit]

Byte magazine stated in August 1983, "[The C Programming Language] is the definitive work on the C language. Don't read any further until you have this book!"[1] Jerry Pournelle wrote in the magazine that year that the book "is still the standard ... a bit terse". He continued, "You can learn the C language without getting Kernighan and Ritchie, but that's doing it the hard way. You're also working too hard if you make it the only book on C that you buy."[9]

Influence[edit]

The C Programming Language has often been cited as a model for technical writing, with reviewers describing it as having clear presentation and concise treatment. Examples generally consist of complete programs of the type one is likely to encounter in daily use of the language, with an emphasis on system programming. Its authors wrote,

We have tried to retain the brevity of the first edition. C is not a big language, and it is not well served by a big book. We have improved the exposition of critical features, such as pointers, that are central to C programming. We have refined the original examples, and have added new examples in several chapters. For instance, the treatment of complicated declarations is augmented by programs that convert declarations into words and vice versa. As before, all examples have been tested directly from the text, which is in machine-readable form.

— preface to the second edition[10]
"Hello, World!" program by Brian Kernighan (1978)

The book introduced the "Hello, World!" program, which prints only the text "hello, world" as an illustration of a minimal working C program. Since then, many texts have followed that convention for introducing a programming language.

Before the advent of ANSI C, the first edition of the text served as the de facto standard of the language for writers of C compilers. With the standardization of ANSI C, the authors more consciously wrote the second edition for programmers rather than compiler writers, writing,

Appendix A, the reference manual, is not the standard, but our attempt to convey the essentials of the standard in a smaller space. It is meant for easy comprehension by programmers, but not as a definition for compiler writers—that role properly belongs to the standard itself. Appendix B is a summary of the facilities of the standard library. It too is meant for reference by programmers, not implementers. Appendix C is a concise summary of the changes from the original version.

— preface to the second edition[10]

The influence of The C Programming Language on programmers, a generation of whom first worked with C in universities and industry, has led many to accept the authors' programming style and conventions as recommended practice, if not normative practice. For example, the coding and formatting style of the programs presented in both editions of the book is often referred to as "K&R style" or the "One True Brace Style" and became the coding style used by convention in the source code for the Unix and Linux kernels.

See also[edit]

References[edit]

  1. ^ a b Ward, Terry A. (August 1983). "Annotated C / A Bibliography of the C Language". Byte. p. 268. Retrieved 31 January 2015.
  • ^ Prinz, Peter; Crawford, Tony (2005-12-16). C in a Nutshell. O'Reilly Media, Inc. p. 3. ISBN 9780596550714.
  • ^ Ritchie, Dennis M. (1993). "The Development of the C Language". History of Programming Languages, 2nd Edition. Retrieved 2018-11-11.
  • ^ "Leap In and Try Things: Interview with Brian Kernighan". Harmony at Work. October 24, 2009. Archived from the original on July 23, 2012. Retrieved 2013-03-03.
  • ^ Computerphile (2015-08-18). "'C' Programming Language: Brian Kernighan - Computerphile". Archived from the original on 2021-12-21. Retrieved 2018-11-11.
  • ^ Kernighan, Brian W.; Ritchie, Dennis M. (February 1978). The C Programming Language (1st ed.). Englewood Cliffs, NJ: Prentice Hall. ISBN 0-13-110163-3.
  • ^ Keninghan, Brian W. "The C Programming Language, Second Edition". Priceton University. Retrieved 18 February 2023.
  • ^ Keninghan, Brian W. (1 October 2012). "An Interview with Brian Kernighan on C and The C Programming Language". InformIT (Interview). Interviewed by John Wait.
  • ^ Pournelle, Jerry (December 1983). "The User Looks at Books". Byte. p. 519. Retrieved 24 July 2016.
  • ^ a b Kernighan, Brian; Ritchie, Dennis M. (March 1988). The C Programming Language (2nd ed.). Englewood Cliffs, NJ: Prentice Hall. ISBN 0-13-110362-8.
  • External links[edit]

    C language standards Succeeded by

    C89 / C90 / "ANSI C"
    (2nd edition of book)


    Retrieved from "https://en.wikipedia.org/w/index.php?title=The_C_Programming_Language&oldid=1228471761"

    Categories: 
    1978 non-fiction books
    Computer programming books
    C (programming language)
    Collaborative non-fiction books
    Hidden categories: 
    Articles with short description
    Short description is different from Wikidata
    Articles containing potentially dated statements from 2024
    All articles containing potentially dated statements
     



    This page was last edited on 11 June 2024, at 12:16 (UTC).

    Text is available under the Creative Commons Attribution-ShareAlike License 4.0; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.



    Privacy policy

    About Wikipedia

    Disclaimers

    Contact Wikipedia

    Code of Conduct

    Developers

    Statistics

    Cookie statement

    Mobile view



    Wikimedia Foundation
    Powered by MediaWiki