Из Википедии, свободной энциклопедии
Перейти к навигации Перейти к поиску

Язык программирования C (иногда называемый K&R по инициалам авторов) - это книга по компьютерному программированию, написанная Брайаном Керниганом и Деннисом Ритчи , последний из которых первоначально разработал и реализовал язык, а также разработал операционную систему Unix с в котором развитие языка было тесно переплетено. Эта книга сыграла центральную роль в развитии и популяризации языка программирования C и до сих пор широко читается и используется. Потому что книга была соавтором разработчика языка оригинала, и потому что первое издание книги служило в течение многих лет в качестве фактического стандарт для языка, книга была расценена многими как авторитетный справочник по C. [1] [2]

История [ править ]

C был создан Деннисом Ритчи в Bell Labs в начале 1970 - х годов в качестве расширенной версии Ken Thompson «s B . [3] Другой сотрудник Bell Labs, Брайан Керниган , написал первое руководство по C, [4] и убедил Ричи стать соавтором книги по этому языку. [5] Керниган написал большую часть «пояснительного» материала к книге, а справочное руководство Ричи стало ее приложениями.

Первое издание, опубликованное 22 февраля 1978 г., было первой общедоступной книгой по языку программирования C. Его версия C иногда называют K & R C (после того, как авторы книги), часто , чтобы отличить эту раннюю версию с более поздней версией C стандартизирована ANSI C . [6]

В апреле 1988 г. было опубликовано второе издание книги, обновленное, чтобы охватить изменения в языке, возникшие в результате нового тогда стандарта ANSI C, в частности, с включением справочных материалов по стандартным библиотекам . Второе издание книги (а по состоянию на 2018 год самое последнее) было переведено более чем на 20 языков. В 2012 году была опубликована электронная версия второго издания в форматах ePub, Mobi и PDF.

ANSI C, впервые стандартизованный в 1989 году (как ANSI X3.159-1989), с тех пор претерпел несколько изменений, последней из которых является ISO / IEC 9899: 2018 (также называемый C17 или C18 ), принятый в качестве стандарта ANSI в июне. 2018. Однако не было выпущено новой редакции языка программирования C, охватывающей более свежие стандарты.

Прием [ править ]

В августе 1983 года журнал Byte заявил: «[ Язык программирования C ] является окончательной работой над языком C. Не читайте дальше, пока не получите эту книгу!» [1] Джерри Пурнелль написал в журнале в том году, что книга «по-прежнему является стандартом ... немного лаконична». Он продолжил: «Вы можете выучить язык C, не обращаясь к Кернигану и Ричи, но это трудный путь. Вы также слишком много работаете, если сделаете это единственной книгой по C, которую вы покупаете». [7]

Влияние [ править ]

Язык программирования C часто упоминается как образец для написания технической документации , причем рецензенты описывают его как имеющий четкое представление и краткую трактовку. Примеры обычно состоят из полных программ того типа, с которым можно встретиться при повседневном использовании языка, с упором на системное программирование . Его авторы сказали:

Мы постарались сохранить краткость первого издания. C - небольшой язык, и большая книга его не обслуживает. Мы улучшили описание критических функций, таких как указатели, которые являются центральными в программировании на C. Мы доработали исходные примеры и добавили новые в несколько глав. Например, обработка сложных объявлений дополняется программами, преобразующими объявления в слова и наоборот. Как и прежде, все примеры тестировались прямо из текста, который находится в машиночитаемой форме.

-  предисловие ко второму изданию [8]
"Привет мир!" программа Брайана Кернигана (1978)

В книге представлена ​​программа « Hello, World! », Которая печатает только текст «hello, world», как иллюстрацию минимально работающей программы C. С тех пор многие тексты следовали этому соглашению при введении языка программирования.

До появления ANSI C первое издание текста служило фактическим стандартом языка для авторов компиляторов C. После стандартизации ANSI C авторы более сознательно написали второе издание для программистов, а не для разработчиков компиляторов, заявив:

Приложение A, справочное руководство, не является стандартом, это наша попытка передать основные положения стандарта в меньшем пространстве. Он предназначен для облегчения понимания программистами, но не как определение для авторов компиляторов - эта роль принадлежит самому стандарту. Приложение B представляет собой обзор возможностей стандартной библиотеки. Он также предназначен для использования программистами, а не разработчиками. Приложение C представляет собой краткое изложение изменений по сравнению с исходной версией.

-  предисловие ко второму изданию [8]

Влияние языка программирования C на программистов, поколение которых сначала работало с C в университетах и ​​в промышленности, побудило многих принять стиль программирования и соглашения авторов как рекомендованную, если не нормативную практику. Например, стиль кодирования и форматирования программ, представленных в обоих изданиях книги, часто упоминается как «стиль K&R» или « стиль одной истинной скобки » и стал стилем кодирования, используемым по соглашению в исходном коде для Unix. и ядра Linux .

См. Также [ править ]

  • Язык программирования C ++
  • Подготовка программ для электронного цифрового компьютера

Ссылки [ править ]

  1. ^ a b Уорд, Терри А. (август 1983 г.). "Аннотированная библиография C / A языка C" . Байт . п. 268 . Проверено 31 января 2015 года .
  2. ^ Принц, Питер; Кроуфорд, Тони (2005-12-16). C в двух словах . O'Reilly Media, Inc. стр. 3. ISBN 9780596550714.
  3. ^ Ричи, Деннис М. (1993). «Развитие языка Си» . История языков программирования, 2-е издание . Проверено 11 ноября 2018 .
  4. ^ "Перейти и попробовать вещи: интервью с Брайаном Керниганом" . Гармония в действии . 24 октября 2009 года в архив с оригинала на 23 июля 2012 года . Проверено 3 марта 2013 .
  5. ^ Computerphile (18 августа 2015 г.). « Язык программирования « C »: Брайан Керниган - компьютерщик» . Проверено 11 ноября 2018 .
  6. ^ Керниган, Брайан В .; Ричи, Деннис М. (февраль 1978 г.). Язык программирования C (1-е изд.). Энглвуд Клиффс, Нью-Джерси : Prentice Hall . ISBN 0-13-110163-3.
  7. ^ Pournelle, Джерри (декабрь 1983). «Пользователь смотрит на книги» . Байт . п. 519 . Проверено 24 июля +2016 .
  8. ^ a b Керниган, Брайан ; Ричи, Деннис М. (март 1988 г.). Язык программирования C (2-е изд.). Энглвуд Клиффс, Нью-Джерси : Prentice Hall . ISBN 0-13-110362-8.

Внешние ссылки [ править ]

  • Язык программирования C , первое издание доступно в Интернет-архиве
  • «Программирование на C» . Исследовательский центр компьютерных наук Bell Labs . 2004-06-13. Архивировано из оригинала на 2017-02-21 . Проверено 17 января 2017 года .. Еще одна заархивированная страница: "Язык программирования C" . 2016-02-04.
  • Ответы на упражнения на языке программирования C