Является учебным введением в центральную часть языка “C”

Язык С
Строк программы, исключая математическое обеспечение Является учебным введением в центральную часть языка “C” Hачинаем. Единственный способ освоить новый язык Оператор FOR Набор полезных программ Подсчет символов Подсчет слов Функции Аргументы - вызов по значению Область действия: внешние переменные Резюме Константы Описания Преобразование типов До 9 и буквы от а до F Операции и выражения присваивания Старшинство и порядок вычисления Операторы и блоки Переключатель Цикл DO - WHILE Оператор CONTINUE Основные сведения Функции, возвращающие нецелые значения Еще об аргументах функций Правила, определяющие область действия Статические переменные Блочная структура Рекурсия Указатели и адреса Указатели и массивы Адресная арифметика Указатели символов и функции Указатели - не целые До 12, а не от 0 до 11. Так как за экономию памяти у нас пока не награждают, такой способ проще, чем подгонка индек-сов Инициализация массивов указателей Указатели на функции Структуры Структуры и функции Указатели на структуры Мы продемонстрируем, как правильно выполнить эту задачу Поля Определение типа Обращение к стандартной библиотеке Форматный вывод - функция PRINTF Форматный ввод - функция SCANF Форматное преобразование в памяти Обработка ошибок - STDERR и EXIT Обращение к системе Низкоуровневый ввод/вывод - операторы READ и WRITE Произвольный доступ - SEEK и LSEEK Пример - распечатка справочников Пример - распределитель памяти Константы Синтаксическая нотация Преобразования Первичные выражения Унарные операции Аддитивные операции Операция присваивания Спецификаторы типа Описание структур и объединений Инициализация TYPEDEF Оператор SWITCH Внешнее определение функции Область действия внешних идентификаторов Неявные описания Явные преобразования указателей Анахронизмы Операторы
439386
знаков
0
таблиц
0
изображений

1 является учебным введением в центральную часть языка “C”.

Цель - позволить читателю стартовать так быстро,как только

возможно, так как мы твердо убеждены, что единственный спо-

соб изучить новый язык - писать на нем программы. При этом ,

однако, предполагается рабочее владение основными элементами

программирования; здесь не объясняется, что такое ЭВМ или

компилятор, не поясняется смысл выражений типа N=N+1. Хотя

мы и пытались, где это возможно, продемонстрировать полезную

технику программирования. Эта книга не предназначается быть

справочным руководством по структурам данных и алгоритмам;

там, где мы вынуждены были сделать выбор, мы концентрирова-

лись на языке.

В главах со 2-й по 6-ю различные аспекты “C” излагаются

более детально и несколько более формально, чем в главе 1,

хотя ударение по-прежнему делается на разборе примеров за-

конченных, полезных программ, а не на отдельных фрагментах.

В главе 2 обсуждаются основные типы данных, операторы и

выражения. В главе 3 рассматриваются управляющие операторы:

IF-ELSE ,WHILE ,FOR и т.д. Глава 4 охватывает функции и

структуру программы - внешние переменные, правила определен-

ных областей действия описания и т.д. В главе 5 обсуждаются

указатели и адресная арифметика. Глава 6 содержит подробное

описание структур и объединений.

В главе 7 описывается стандартная библиотека ввода-вы-

вода языка “C”, которая обеспечивает стандартный интерфейс с

операционной системой. Эта библиотека ввода-вывода поддержи-

вается на всех машинах, на которых реализован “C”, так что

программы, использующие ее для ввода, вывода и других сис-

темных функций, могут переноситься с одной системы на другую

по существу без изменений.

В главе 8 описывается интерфейс между “C” - программами

и операционной системой “UNIX”. Упор делается на ввод-вывод,

систему файлов и переносимость. Хотя некоторые части этой

главы специфичны для операционной системы “UNIX”, програм-

мисты, не использующие “UNIX”, все же должны найти здесь по-

лезный материал, в том числе некоторое представление о том,

как реализована одна версия стандартной библиотеки и предло-

жения для достижения переносимости программы.

Приложение A содержит справочное руководство по языку

“C”. Оно является “официальным” изложением синтаксиса и се-

мантики “C” и (исключая чей-либо собственный компилятор)

окончательным арбитром для всех двусмысленностей и упущений

в предыдущих главах.


·     11 -

Так как “C” является развивающимся языком, реализован-

ным на множестве систем, часть материла настоящей книги мо-

жет не соответствовать текущему состоянию разработки на ка-

кой-то конкретной системе. Мы старались избегать таких проб-

лем и предостерегать о возможных трудностях. В сомнительных

случаях, однако, мы обычно предпочитали описывать ситуацию

для системы “UNIX” PDP-11 , так как она является средой для

большинства программирующих на языке “C”. В приложении а

также описаны расхождения в реализациях языка “C” на основ-

ных системах.

1. Учебное введение.

Давайте начнем с быстрого введения в язык “C”. Наша

цель - продемонстрировать существенные элементы языка на ре-

альных программах, не увязая при этом в деталях, формальных

правилах и исключениях. В этой главе мы не пытаемся изложить

язык полностью или хотя бы строго (разумеется, приводимые

примеры будут корректными). Мы хотим как можно скорее довес-

ти вас до такого уровня, на котором вы были бы в состоянии

писать полезные программы, и чтобы добиться этого, мы сосре-

дотачиваемся на основном: переменных и константах, арифмети-

ке, операторах передачи управления, функциях и элементарных

сведениях о вводе и выводе. Мы совершенно намеренно оставля-

ем за пределами этой главы многие элементы языка “C”, кото-

рые имеют первостепенное значение при написании больших

программ, в том числе указатели, сртуктуры, большую часть из

богатого набора операторов языка “C”, несколько операторов

передачи управления и несметное количество деталей.

Такой подход имеет, конечно, свои недостатки. Самым су-

щественным является то, что полное описание любого конкрет-

ного элемента языка не излагается в одном месте, а поясне-

ния, в силу краткости, могут привести к неправильному истол-

кованию. Кроме того, из-за невозможности использовать всю

мощь языка, примеры оказываются не столь краткими и элегант-

ными, как они могли бы быть. И хотя мы старались свести эти

недостатки к минимуму, все же имейте их ввиду.

Другой недостаток состоит в том, что последующие главы

будут неизбежно повторять некоторые части этой главы. Мы на-

деемся, что такое повторение будет скорее помогать, чем раз-

дражать.

Во всяком случае, опытные программисты должны оказаться

в состоянии проэкстраполировать материал данной главы на

свои собственные программистские нужды. Начинающие же должны

в дополнение писать аналогичные маленькие самостоятельные

программы. И те, и другие могут использовать эту главу как

каркас, на который будут навешиваться более подробные описа-

ния, начинающиеся с главы 2.


Информация о работе «Язык С»
Раздел: Информатика, программирование
Количество знаков с пробелами: 439386
Количество таблиц: 0
Количество изображений: 0

Похожие работы

Скачать
48443
0
0

... основаниям. При этом философская абстракция языка оказывается неразрывно связана с основными темами и движениями философии в целом. Более конкретно, на ранние стадии традиционно рассматриваемого в рамках АФ анализа обыденного языка глубокое влияние оказала философия Дж. Э. Мура, особенно его учение о здравом смысле, согласно которому такие понятия, как «человек», «мир», «я», «внешний мир», « ...

Скачать
43709
0
0

... и других странах СНГ, а также облегчение доступа к русской и мировой культуре и науке. Таким образом, судя по данным наших исследований, востребованность русского языка осталась в республике достаточно высокой. Многие представители современной молдавской молодежи продолжают, как их отцы и деды, тянуться к русской культуре, научным и техническим достижениям России. Русский язык остается языком ...

Скачать
39778
0
1

... рисуночное словесно-слоговое письмо). Памятники среднеэламского периода (14—12 вв. до н.э.) выполнены аккадской клинописью. Памятники новоэламского периода относятся к 8—6 вв. до н.э. Был официальным языком в персидском государстве Ахеменидов в 6—4 вв. предполагается, что он, подвергшись влиянию древнеперсидского, сохранился до раннего средневековья. 7. Бурушаски язык Язык бурушаски ( ...

Скачать
64931
0
0

... /диалект), скифский, согдийский, среднеперсидский, таджикский, таджриши (язык/диалект), талышский, татский, хорезмийский, хотаносакский, шугнано-рушанская группа языков, ягнобский, язгулямский и др. Они относятся к индоиранской ветви индоевропейских языков. Области распространения: Иран, Афганистан, Таджикистан, некоторые районы Ирака, Турции, Пакистана, Индии, Грузии, Российской Федерации. Общее ...

0 комментариев


Наверх