Главная » Просмотр файлов » Г. Шилдт - Полный справочник по C++

Г. Шилдт - Полный справочник по C++ (1109478), страница 5

Файл №1109478 Г. Шилдт - Полный справочник по C++ (Г. Шилдт - Полный справочник по C++) 5 страницаГ. Шилдт - Полный справочник по C++ (1109478) страница 52019-04-28СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 5)

Еще одним примером такого анахронизма является препроцессор. Он играет чрезвычайно важную роль в языке С и очень скромную — в языке С++. Обсуждение свойств, присущих "стилю языка С", в первой части книги позволяет избежать путаницы в остальных главах. Запомните: подмножество С, описанное в части 1, является ядром языка С++ и фунламентом, на котором воздвигнуты сто объектно-ориентированцыс конструкции. Все свойства, описанные злесь, являются неотъемлемой частью языка С++ и могут быть использованы в ваших программах.

Р~йййй' ' Часть 1 содержит мгтеригпы из моей книги С: Тье Ссзпр1еге йв(егепсе (Дасвгеягд1Л !ЩЙЩ Овйоте) (Русский перевод: С Шипдт. Полный справочник по язьжу С. — 1Иа Изд. дам 'Вильямс", г001. — Прим. Ред.). Если язык С ыапересует ввс как сгмсспкятепьный язьж прогргммирсггния, зтг книга окажется дпя вес ценника помощником. Ч тобы понять язык С++, необходимо понять мотивы его создания, идеи, положенные в его основу.

и своиства, которые оп унаследовал от своих предшественников. Таким образом. история языка С++ начинается с языка С. В главе прелсгавлсн обзор языка С, а закжс описана история его возникновения, способы прил1енения и основные принципы. Поскольку язык С++ создан на основе языка С, эту главу можно считазь описанием предыстории языка С++. Многое из того, что сделало язык С++ таким популярным, уходит корнями в язык С. ~~-""-'"-' Происхождение и история языка С Язык С был изобретен и впервые реализован Деннисом Ритчи (Оеппй Кйс!не) на компьютере ОЕС РОР--11 под >правлением операционной системы П!Ч!Х.

Язык С появился в результате развития языка под названием ВСРП. В свою очередь, этот язык был разрабозан Мартином Ричардсом (Магйп К!с!загс) под влиянием другого языка, имевшего название В, автором которого был Кен Томпсон (Кеп Тотрзоп). Итак, в 1970-х годах развитие языка В привело к появлению языка С.

Многие годы фактическим станлартом языка С была версия для операционной системы (ЛЧ)Х. Впервые она была описана в книге Брайана Кернигана (Впап Кегп(- 8ап) и Денниса Ритчи 7ле С Рпуиетщ Еащиале в 1978 году. (Русский перевод: Керниган Б., Ритчи Д. Язык программирования С. — СПб: Невский диалект, 2001.

— Прим. ред.). Летом 1983 года был создан комитет Американского института национальных стандартов (Атпепсап )Ча!!опа! 8!апг)апЬ )пайбде — А)Ч81), целью которого была разработка стандарта языка С. Работа комитета неожиданно растянулась на шесть лет. В итоге стандарт А!чу!С был олобрен в декабре 1989 гела и стал распространяться в начале 1990-го. Этот стандарт был также олобрен Организацией международных стандартов (1пгегпабопа! 8!апг!ап)з Огйап(глйоп — 180), получив название АФЯ/ЮО огалг!апу С В 1995 году была одобрена Первая поправка, которая помимо всего прочего добавила несколько новых библиотечных функций.

В 1989 году стандарт языка С вместе с Первой поправкой стали базовым докумеюлом для станларза языка С++„в котором было вьшслено псдмяожеояел С Версию языка С, определенную стандартом 1989 года, обычно называют С89. После 1989 года в центре внимания программистов оказался язык С++, Развитие этого языка на протяжении 1990-х годов завсршилссь одобрением стандарта в конце 1998 гола.

Между тем работа над языком С продолжалась. нс вызывая излишнего шума. В итоге в !999 году появился новый стандарз. языка С, который обычно называют С99. В целом стандарт С99 сохранил практически все свойства стандарта С89, не изменив основных аспектов языка. Таким образом, язык С, описанный стандартом С99, практически совпадае~ с языком, соответствуюшим стандарту С89.

Комитет по разработке сганларта С99 сосредоточился на двух вопросах: включении в язык ~~сскольких математических библиотек и развитии некоторых специфических и весьма сложных свойств, например, массивов переменной длины и квалификатора указателей хевсхьсс. В стандарт С99 вошли также некоторыс своиства, позаимствованные из языка С++, например, однострочные комментарии.

Поскольку разработка станларта языка С++ завершилась до создания стандарта С99, ни слно из новшеств языка С нс вошло в стандарт С++. ~® Сравнение стандартов С89 и С99 Несмотря на то что все новшества, внесенные в стандарт С99, весьма важны с теоретической точки зрения, они имели мало практических последствий, так как до сих пор нет ни одного широко распространенного компилятора, который Часть 1.

Основы языка С++: подмножество С подлсрживал бы стандар~ С99. Большинство программистов до сих пор считают языком С ого вариант., опрсдслснный стандартом С89. Имспно ого реализуют вес основныс компиляторы. Более того, подмножество С языка С++ описывается именно стандартом С89. Хотя некоторые новшества, включенные в станларт С99, в конце концов обязательно будут учтены слсдуюшим станлартом языка С++, пока они несовместимы с языком С++. Поскольку подмножество С языка С++ соответствует стандарту С89, и эту версию изучают большинство программистов, именно сс мы рассмотрим в час~и!.

Итак, используя название С, мы будем иметь в виду версию языка, определенную стандартом С89. Однако мы будем отмечать важные различия между версиями С89 и С99, поскольку это улучшит совместимость языков С и С++, '.'2~ С вЂ” язык среднего уровня Язык С часто называют языком среднею уровня. Это нс означает, что оп монсе эффективен, более нсулобсн в использовании или манас продуман, чем языки высокого уровня, такие как Ваяс или Равса1. Отсюда также нс следует, что он запуган, как язык ассемблера (и порождает связанныс с этим проблемы). Это выраженно означает лишь, что язык С обьсдиняст лучшис свойства языков высокого уровня, возможности управления и гибкость языка ассемблера.

В табл. 1.1 показано место языка С орели других языков программирования. Таблица 1.1. Место языка С среди остальных языков програьвеированив Ада Мод и1а-2 Равса1 СОВО~ РОВТНАЫ ВАВ1С Зава Св С++ С Роли Маао-аввегпыег АвввгпЫег Высший уровень Средний уровень Низший уровень Глава 1. Обзор языка С Будучи языком среднсго уровня, язык С позволяет осушсствлять манипуляции с битами, байтами и адресами — основными элементами, с которыми работают функции операционной системы. Несмотря на это, програмллы, написанные на языке С, можно выполнять на разных компьютерах.

Это свойство программ называется машинанезаеисимастью (ропаЫ1йу). Например, если программу, написанную для операционной системы 0)л)1Х, можно легко преобразовать, чтобы она работала на платформе лт)одолев, то говорят, что такая программа является машинанезависимаи (роггаЫс). Вес языки высокого уровня используют концепцию типов данных, Тин данных (да1а гуре) определяет множсшво значений, которые может принимать переменная, а также множество операций, которые нал нсй можно выполлшть. К основныл1 типам данных относязся полос число, символ и дсйсзвитсльнос число.

Несмотря на то что в языке С сушсствуст пять встроенных типов данных, он нс является строго типнзи- рованным языком, как языки Разса1 и Ада. В языке С разрешены практически все преобразования типов. Например, в одном и том же выражении можно свободно использовать псрсменныс символыюго и целочисленного ~илов.

В отличие от языков высокого уровня, язык С практически нс проверяет ошибки, возникающие на этапе выполнения программ. Например, не осуществляется проверка возможного выхода индекса массива за пределы лопустимого диапазона. Предотвращение ошибок ~акого рода возлагается на программиста. Кроме того, язык С нс требует строгой совместимости типов параметров и аргументов функций. Как известно, языки высокого уровня обычно требуют, чтобы тип аргумента ~очно совпадал с типом соответствуюшсго параметра.

Однако в языке С такого условия нет. Он позволяет использовать аргумент любого типа, если его можно разумным образом преобразовать в тип параметра. Кроме того язык С предусматривает средства для автоматического преобразования ~илов. Особенность языка С заключается в том, по он позволяет непосредственно манипулировать битами, байтами, машинными словами и указателями.

Это делает его очень удобным для системного программирования, в котором эти операции широко распространены. Другой важный аспект языка состоит в том, что в нем предусмотрено очень небольшое количество ключевых слов, которые можно использовать для конструирования выражений. Например, стандарт С89 содержит лишь 32 ключевых слова, а стандарт С99 добавил к ним всего 5 слов.

Характеристики

Тип файла
DJVU-файл
Размер
7,03 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6510
Авторов
на СтудИзбе
302
Средний доход
с одного платного файла
Обучение Подробнее