Читать «Полный справочник по С++» онлайн - страница 6

Герберт Шилдт

На заметку

Часть I содержит материалы из моей книги С: The Complete Reference (McGrawHill-Osbome) (Русский перевод: Г. Шилдт. Полный справочник по языку С. — М.: Изд. дом ‘Вильямс”, 2001. — Прим. ред.). Если язык С интересует вас как самостоятельный язык программирования, эта книга окажется для вас ценным помощником.

Полный справочник по

Глшш 1

Обзор языка С

Чтобы понять язык C++, необходимо понять мотивы его создания, идеи, положенные в его основу, и свойства, которые он унаследовал от своих предшественников. Таким образом, история языка C++ начинается с языка С. В главе представлен обзор языка С, а также описана история его возникновения, способы применения и основные принципы. Поскольку язык C++ создан на основе языка С, эту главу можно считать описанием предыстории языка C++. Многое из того, что сделало язык C++ таким популярным, уходит корнями в язык С.

Ш Происхождение и история языка С

Язык С был изобретен и впервые реализован Деннисом Ритчи (Dennis Ritchie) на компьютере DEC PDP-11 под управлением операционной системы UNIX. Язык С появился в результате развития языка под названием BCPL. В свою очередь, этот язык был разработан Мартином Ричардсом (Martin Richards) под влиянием другого языка, имевшего название В, автором которого был Кен Томпсон (Ken Tompson). Итак, в 1970-х годах развитие языка В привело к появлению языка С.

Многие годы фактическим стандартом языка С была версия для операционной системы UNIX. Впервые она была описана в книге Брайана Кернигана (Brian Kerni-gan) и Денниса Ритчи The С Programming Language в 1978 году. (Русский перевод: Кер-ниган Б., Ритчи Д. Язык программирования С. — СПб: Невский диалект, 2001. — Прим. ред.). Летом 1983 года был создан комитет Американского института национальных стандартов (American National Standards Institute — ANSI), целью которого была разработка стандарта языка С. Работа комитета неожиданно растянулась на шесть лет.

В итоге стандарт ANSI С был одобрен в декабре 1989 года и стал распространяться в начале 1990-го. Этот стандарт был также одобрен Организацией международных стандартов (International Standards Organization — ISO), получив название ANSI/ISO Standard С. В 1995 году была одобрена Первая поправка, которая помимо всего прочего добавила несколько новых библиотечных функций. В 1989 году стандарт языка С вместе с Первой поправкой стали базовым документом для стандарта языка C++, в котором было выделено подмножество С. Версию языка С, определенную стандартом 1989 года, обычно называют С89.

После 1989 года в центре внимания программистов оказался язык C++. Развитие этого языка на протяжении 1990-х годов завершилось одобрением стандарта в конце 1998 года. Между тем работа над языком С продолжалась, не вызывая излишнего шума. В итоге в 1999 году появился новый стандарт языка С, который обычно называют С99. В целом стандарт С99 сохранил практически все свойства стандарта С89, не изменив основных аспектов языка. Таким образом, язык С, описанный стандартом С99, практически совпадает с языком, соответствующим стандарту С89. Комитет по разработке стандарта С99 сосредоточился на двух вопросах: включении в язык нескольких математических библиотек и развитии некоторых специфических и весьма сложных свойств, например, массивов переменной длины и квалификатора указателей restrict. В стандарт С99 вошли также некоторые свойства, позаимствованные из языка C++, например, однострочные комментарии. Поскольку разработка стандарта языка C++ завершилась до создания стандарта С99, ни одно из новшеств языка С не вошло в стандарт C++.