Язык Си

Язык Си

Авторы:

Жанр: Программирование

Циклы: не входит в цикл

Формат: Полный

Всего в книге 139 страниц. Год издания книги - 1988.

M. УЭИТ   С. ПРАТА    Д. МАРТИН
Язык Си — руководство для начинающих

Читать онлайн Язык Си


Предисловие редактора перевода

Созданием языков программирования занимаются в большинстве случаев очень квалифицированные люди, часто группы программистов, а иногда даже международные коллективы. Однако подавляющее большинство языков программирования умирало, едва родившись. Лишь к немногим из них был проявлен интерес, и буквально единицы получили действительно широкое распространение. К таким "счастливым" языкам принадлежит язык Си, разработанный Д. Ритчи. Он появился не на пустом месте. Ему предшествовали и оказали на него серьезное влияние язык BCPL, разработанный М. Ричардсоном, и язык Би (В), созданный К. Томпсоном.

Си — это достаточно выразительный язык программирования, предназначенный для описания широкого круга задач и содержащий современные механизмы управления вычислительным процессом и работы с данными. В то же время язык Си очень прост: в него введены некоторые средства, характерные скорее для ассембле-ров, чем для языков высокого уровня. Простота языка не требует создания слишком сложных компиляторов и позволяет получать достаточно эффективный объектный код. Эти свойства языка особенно важны при написании операционных систем, но они могут оказаться очень полезными и при разработке прикладных программ.

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

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

Предлагаемая читателю книга — учебник по языку Си. Книга написана известными американскими специалистами М. Уэйтом, С. Пратой и Д. Мартином с большим педагогическим и методическим мастерством: излагаемый материал проиллюстрирован многочисленными примерами и задачами. Это обеспечивает легкость понимания и усвоения предмета. Поскольку трансляторы с языка Си появились сейчас на отечественных машинах, книга может представлять интерес не только для широкого круга читателей, впервые знакомящихся с языком Си, но и для системных программистов, инженеров и научных работников.

Перевод выполнили В. С. Явнилович (предисловие, гл. 1–9) и Л. Н. Горинович (гл. 10–15 и приложения).

Э. А. Трахтенгерц

Предисловие

Си — простой, изящный язык программирования, на котором останавливает свой выбор все большее число программистов. Эта книга (если вы не посмотрели на титульный лист) называется "Язык Си. Руководство для начинающих"; она представляет собой простой и хороший учебник по языку Си.

Слова "Руководство для начинающих", стоящие в подзаголовке книги, говорят о том, что нашей целью было дать обзор основ языка Си. В программировании опыт — великий учитель; с этой целью в книге приведено много задач учебного и познавательного характера. Мы пытались использовать рисунки всюду, где, как мы надеялись, они помогут внести ясность. Чтобы вы имели возможность проверить себя, в конце каждой главы приводятся вопросы для самоконтроля (и ответы на них). Мы не предполагаем у вас большого опыта работы на каком-нибудь языке программирования, однако иногда будем сравнивать язык Си с другими языками, ориентируясь на тех читателей, которые знают их.

Мы несколько расширили границы обычного учебника: обсудили ряд более сложных тем, таких, как использование структур, приведение типов, работу с файлами; в приложении мы рассмотрели возможности побитовой обработки на языке Си, а также некоторые расширения языка. Мы описали программную среду компилятора с языка Си, функционирующего как с операционной системой UNIX, так и с программным обеспечением микрокомпьютеров: например, обсудили вопрос переключения ввода-вывода и продемонстрировали использование портов в микропроцессорах INTEL 8086/8088. И наконец, мы включили шутливые рисунки как одно из довольно приятных дополнений.

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


С этой книгой читают
Питон — модули, пакеты, классы, экземпляры

Python - объектно-ориентированный язык сверхвысокого уровня. Python, в отличии от Java, не требует исключительно объектной ориентированности, но классы в Python так просто изучить и так удобно использовать, что даже новые и неискушенные пользователи быстро переходят на ОО-подход.


Обработка событий в С++

В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.


Симуляция частичной специализации
Автор: П Кузнецов

В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.


MFC и OpenGL

В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.


Java 7

Рассмотрено все необходимое для разработки, компиляции, отладки и запуска приложений Java. Изложены практические приемы использования как традиционных, так и новейших конструкций объектно-ориентированного языка Java, графической библиотеки классов Swing, расширенной библиотеки Java 2D, работа со звуком, печать, способы русификации программ. Приведено полное описание нововведений Java SE 7: двоичная запись чисел, строковые варианты разветвлений, "ромбовидный оператор", NIO2, новые средства многопоточности и др.


Pro Git

Разработчику часто требуется много сторонних инструментов, чтобы создавать и поддерживать проект. Система Git — один из таких инструментов и используется для контроля промежуточных версий вашего приложения, позволяя вам исправлять ошибки, откатывать к старой версии, разрабатывать проект в команде и сливать его потом. В книге вы узнаете об основах работы с Git: установка, ключевые команды, gitHub и многое другое.В книге рассматриваются следующие темы:основы Git;ветвление в Git;Git на сервере;распределённый Git;GitHub;инструменты Git;настройка Git;Git и другие системы контроля версий.


Зимний сад и витражи

Данное издание поможет тем, кто решил создать зимний сад собственными руками. В книге рассказывается о том, какие строительные материалы лучше всего использовать для строительства, какое оборудование потребуется. Кроме этого, в ней содержится информация по благоустройству внутреннего пространства зимнего сада.


Строим дом

Что может быть лучше собственного просторного дома с большим и ухоженным приусадебным участком?! Данная книга поможет как начинающим, так и уже опытным мастерам самостоятельно возвести жилище, которое будет удивлять окружающих красотой, своеобразием и, безусловно, прочностью. Построить дом – это не табурет сколотить! Здесь, прежде чем за что-то браться, необходимо проштудировать соответствующую литературу или спросить совета у бывалых. Представленная книга является воплощением и того и другого. Она – совокупность тех знаний, которые потребуются мастеру для строительства.


Нравы московских девственных улиц

«Иван Сизой матушке Москве белокаменной, по долгом странствовании вне ее, здравия желает, всем ее широким четырем сторонам низкий поклон отдает.Год с лишком шатался я по разным местам, а все нигде не видал того, что я так люблю в Москве, – это ее глухих, отдаленных от центра города улиц, которые давно как-то назвал девственными, с их, так влекущей к себе сердце мое, поразительной и своеобразною бедностью…».


Степная дорога ночью

«Пора была самая глухая: сено скошено, рожь сжата, а до уборки проса, овсов и гречихи было еще далеко. К тому же был какой-то большой праздник, чуть ли не успеньев день; следовательно, народу на проезжей дороге совсем не было.В воздухе ощутительно распространялись прохлада и тишина наступающего вечера…».


Другие книги автора
Язык программирования C [Лекции и упражнения, 6-е изд.]

В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.