WWW.KNIGI.KONFLIB.RU

БЕСПЛАТНАЯ ЭЛЕКТРОННАЯ БИБЛИОТЕКА

 
<< HOME
Научная библиотека
CONTACTS

Pages:     || 2 | 3 | 4 | 5 |   ...   | 49 |

«Версия 0.1 Table of Contents Предисловие Предисловие к первому изданию Введение 1. Обзор языка 1.1. Начнем, пожалуй 1.2. Переменные и арифметические выражения 1.3. ...»

-- [ Страница 1 ] --

Язык программирования Си

Брайан Керниган, Деннис Ритчи

3-е издание

Версия 0.1

Table of Contents

Предисловие

Предисловие к первому изданию

Введение

1. Обзор языка

1.1. Начнем, пожалуй

1.2. Переменные и арифметические выражения

1.3. Инструкция for

1.4. Именованные константы

1.5. Ввод-вывод символов

1.5.1. Копирование файла

1.5.2. Подсчет символов

1.5.3. Подсчет строк

1.5.4. Подсчет слов

1.6. Массивы

1.7. Функции

1.8. Аргументы. Вызов по значению

1.9. Символьные массивы

1.10. Внешние переменные и область видимости

2. Типы, операторы и выражения

2.1. Имена переменных

2.2. Типы и размеры данных

2.3. Константы

2.4. Объявления

2.5. Арифметические операторы

2.6. Операторы отношения и логические операторы

2.7. Преобразования типов

2.8. Операторы инкремента и декремента

2.9. Побитовые операторы

2.10. Операторы и выражения присваивания

2.11. Условные выражения

2.12. Приоритет и очередность вычислений

3. Управление

3.1. Инструкции и блоки

3.2. Конструкция if-else

3.3. Конструкция else-if

3.4. Переключатель switch

3.5. Циклы while и for

3.6. Цикл do-while

3.7. Инструкции break и continue

3.8. Инструкция goto и метки

4. Функции и структура программы

4.1. Основные сведения о функциях

4.2. Функции, возвращающие нецелые значения

4.3. Внешние переменные

4.4. Области видимости

4.5. Заголовочные файлы

4.6. Статические переменные

4.7. Регистровые переменные

4.8. Блочная структура

4.9. Инициализация

4.10. Рекурсия

4.11. Препроцессор языка Си

4.11.1. Включение файла

4.11.2. Макроподстановка

4.11.3. Условная компиляция

5. Указатели и массивы

5.1. Указатели и адреса

5.2. Указатели и аргументы функций

5.3. Указатели и массивы

5.4. Адресная арифметика

5.5. Символьные указатели функции

5.6. Массивы указателей, указатели на указатели

5.7. Многомерные массивы

5.8. Инициализация массивов указателей

5.9. Указатели против многомерных массивов

5.10. Аргументы командной строки

5.11. Указатели на функции

5.12. Сложные объявления

6. Структуры

6.1. Основные сведения о структурах

6.2. Структуры и функции

6.3. Массивы структур

6.4. Указатели на структуры

6.5. Структуры со ссылками на себя

6.6. Просмотр таблиц

6.7. Средство typedef

6.8. Объединения

6.9. Битовые поля

7. Ввод и вывод

7.1. Стандартный ввод-вывод

7.2. Форматный вывод (printf)

7.3. Списки аргументов переменной длины

7.4. Форматный ввод (scanf)

7.5. Доступ к файлам

7.6. Управление ошибками (stderr и exit)

7.7. Ввод-вывод строк

7.8. Другие библиотечные функции

7.8.1. Операции со строками

7.8.2. Анализ класса символов и преобразование символов

7.8.3. Функция ungetc

7.8.4. Исполнение команд операционной системы

7.8.5. Управление памятью

7.8.6. Математические функции

7.8.7. Генератор случайных чисел

8. Интерфейс с системой UNIX

8.1. Дескрипторы файлов

8.2. Нижний уровень ввода-вывода (read и write)

8.3. Системные вызовы open, creat, close, unlink

8.4. Произвольный доступ (lseek)

8.5. Пример. Реализация функций fopen и getc

8.6. Пример. Печать каталогов

8.7. Пример. Распределитель памяти

А. Справочное руководство

А 1. Введение

А 2. Соглашения о лексике

А 2.1. Лексемы (tokens)

А 2.2. Комментарий

А 2.3. Идентификаторы

А 2.4. Ключевые слова

А 2.5. Константы

А 2.6. Строковые литералы

A 3. Нотация синтаксиса

А 4. Что обозначают идентификаторы

А 4.1. Класс памяти

А 4.2. Базовые типы

А 4.3. Производные типы

А 4.4. Квалификаторы типов

А 5. Объекты и Lvalues

А 6. Преобразования

А 6.1. Целочисленное повышение

А 6.2. Целочисленные преобразования

А 6.3. Целые и числа с плавающей точкой

А 6.4. Типы с плавающей точкой

А 6.5. Арифметические преобразования

А 6.6. Указатели и целые

А 6.7. Тип void

А 6.8. Указатели на void

А 7. Выражения

А 7.1. Генерация указателя

А 7.2. Первичные выражения

А 7.3. Постфиксные выражения

А 7.4. Унарные операторы

А 7.5. Оператор приведения типа

А 7.6. Мультипликативные операторы

А 7.7. Аддитивные операторы

А 7.8. Операторы сдвига

А 7.9. Операторы отношения

А 7.10. Операторы равенства

А 7.11. Оператор побитового И

А 7.12. Оператор побитового исключающего ИЛИ

А 7.13. Оператор побитового ИЛИ

А 7.14. Оператор логического И

А 7.15. Оператор логического ИЛИ

А 7.16. Условный оператор

А 7.17. Выражения присваивания

А 7.18. Оператор запятая

А 7.19. Константные выражения

А 8. Объявления

А 8.1. Спецификаторы класса памяти

А 8.2. Спецификаторы типа

А 8.3. Объявления структур и объединений

A 8.4. Перечисления

А 8.5. Объявители

А 8.6. Что означают объявители

А 8.7. Инициализация

А 8.8. Имена типов

А 8.9. Объявление typedef

А 8.10. Эквивалентность типов

А 9. Инструкции

А 9.1. Помеченные инструкции

А 9.2. Инструкция-выражение

А 9.3. Составная инструкция

А 9.4. Инструкции выбора

А 9.5. Циклические инструкции

А 9.6. Инструкции перехода

А 10. Внешние объявления

А 10.1. Определение функции

А 10.2. Внешние объявления

А 11. Область видимости и связи

А 11.1. Лексическая область видимости

А 11.2. Связи

А 12. Препроцессирование

А 12.1. Трехзнаковые последовательности

А 12.2. Склеивание строк

А 12.3. Макроопределение и макрорасширение

А 12.4. Включение файла

А 12.5. Условная компиляция

А 12.6. Нумерация строк

А 12.7. Генерация сообщения об ошибке

А 12.8. Прагма

А 12.9. Пустая директива

А 12.10. Заранее определенные имена

А 13. Грамматика

B. Стандартная библиотека

В 1. Ввод-вывод: stdio.h

В 1.1. Операции над файлами

В 1.2. Форматный вывод

В 1.3. Форматный ввод

В 1.4. Функции ввода-вывода символов

В 1.5. Функции прямого ввода-вывода

В 1.6. Функции позиционирования файла

В 1.7. Функции обработки ошибок

В 2. Проверки класса символа: ctype.h

В 3. Функции, оперирующие со строками: string. h

В 4. Математические функции: math. h

В 5. Функции общего назначения: stdlib. h

В 6. Диагностика: assert. h

В 7. Списки аргументов переменной длины: stdarg.h

В 8. Дальние переходы: setjmp. h

В 9. Сигналы: signal. h

В 10. Функции даты и времени: time.h

В 11. Зависящие от реализации пределы: limits.h и float.h

C. Перечень изменений

Предисловие С момента публикации в 1978 г. книги "Язык программирования Си" в мире компьютеров произошла революция. Большие машины стали еще больше, а возможности персональных ЭВМ теперь сопоставимы с возможностями больших машин десятилетней давности. Язык Си за это время также изменился, хотя и не очень сильно; что же касается сферы применения Си, то она далеко вышла за рамки его начального назначения как инструментального языка операционной системы UNIX.

Рост популярности Си, накапливающиеся с годами изменения, создание компиляторов коллективами разработчиков, ранее не причастных к проектированию языка, — все это послужило стимулом к более точному и отвечающему времени определению языка по сравнению с первым изданием книги. В 1983 г.

Американский институт национальных стандартов (American National Standards Institute — ANSI) учредил комитет, перед которым была поставлена цель выработать "однозначное и машинно-независимое определение языка Си", полностью сохранив при этом его стилистику. Результатом работы этого комитета и явился стандарт ANSI языка Си.

Стандарт формализует средства языка, которые в первом издании были только намечены, но не описаны, такие, например, как присваивание структурам и перечисления. Он вводит новый вид описания функций, позволяющий проводить повсеместную проверку согласованности вызовов функций с их определением;

специфицирует стандартную библиотеку с широким набором функций ввода-вывода, управления памятью, манипуляций со строками символов и другими функциями; уточняет семантику, бывшую в первоначальном определении неясной, и явно выделяет то, что остается машинно-зависимым.

Во втором издании книги "Язык программирования Си" представлена версия Си, принятая в качестве стандарта ANSI. Мы решили описать язык заново, отметив при этом те места, в которых он претерпел изменения. В большинство параграфов это не привнесло существенных перемен, самые заметные различия касаются новой формы описания и определения функции. Следует отметить, что современные компиляторы уже обеспечили поддержку значительной части стандарта.

Мы попытались сохранить краткость первого издания. Си — небольшой язык, и чтобы его описать большой книги не требуется. В новом издании улучшено описание наиболее важных средств, таких как указатели, которые занимают центральное место в программировании на Си; доработаны старые примеры, а в некоторые главы добавлены новые. Так, для усиления трактовки сложных объявлений в качестве примеров включены программы перевода объявлений в их словесные описания и обратно. Как и раньше, все примеры были протестированы прямо по текстам, написанным в воспринимаемой машиной форме.



Pages:     || 2 | 3 | 4 | 5 |   ...   | 49 |
 


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

«Бывают разные художники: одни очень похожи – внешне и внутренне на свои произведения, другие внешне не похожи, но схожи внутренне. Вера Филиппова из числа первых художников. Ее пейзажи и натюрморты удивительно светлые, воздушные, пленэрные, отвечают ее летящей, стремительной натуре, очень солнечной, жизнеутверждающей. А в основе всего этого - ее редкая для сегодняшнего дня, можно сказать, уникальная натура. Она удивительно доброжелательна к людям и буквально согревае т их теплом своей души,...»

«Лайон Спрэг Де Камп Лавкрафт: Биография Страх — одно из самых древних и распространенных человеческих чувств. Естественно, мировая литература уделила страху немало внимания. Одним из писателей, чей вклад в ужасный жанр особенно значителен — американец Говард Филлипс Лавкрафт, которого считают одним из основателей современной литературы ужасов. Другой известный американский фантаст, Лайон Спрэг де Камп, возродивший Конана-варвара, в 1975 году выпустил подробную биографию Лавкрафта. Лавкрафт —...»

«ПРС Платежные и расчетные системы Международный опыт Выпуск 23 Ключевые принципы для системно значимых платежных систем © Центральный банк Российской Федерации, 2007 г. 107016, Москва, ул. Неглинная, 12 Материалы подготовлены Департаментом регулирования расчетов Центрального банка Российской Федерации E-mail: prs@cbr.ru, тел. 771-45-64, факс 771-97-11 Текст данного сборника размещен на сайте Центрального банка Российской Федерации в сети Интернет: http://www.cbr.ru Издатель: ЗАО АЭИ ПРАЙМ-ТАСС...»

«Кулинарный путеводитель. Рецепты от короля французской кухни Огюст Эскофье 2 Книга Огюст Эскофье. Кулинарный путеводитель. Рецепты от короля французской кухни скачана с jokibook.ru заходите, у нас всегда много свежих книг! 3 Книга Огюст Эскофье. Кулинарный путеводитель. Рецепты от короля французской кухни скачана с jokibook.ru заходите, у нас всегда много свежих книг! Огюст Эскофье Кулинарный путеводитель. Рецепты от короля французской кухни 4 Книга Огюст Эскофье. Кулинарный путеводитель....»

«1947 СОДЕРЖАНИЕ О КНИГЕ ПАМЯТИ УЧИТЕЛЯ — АВТОР БИОГРАФИЧЕСКИЕ СВЕДЕНИЯ ОБЩЕСТВЕННАЯ ДЕЯТЕЛЬНОСТЬ В. М. БЕХТЕРЕВА ОСНОВАНИЕ ПСИХОНЕВРОЛОГИЧЕСКОГО ИНСТИТУТА И ИНСТИТУТА МОЗГА НАУЧНОЕ ТВОРЧЕСТВО В. М. БЕХТЕРЕВА 25 декабря 1927 г. столичные газеты принесли неожиданное и печальное известие о кончине академика Владимира Михайловича Бехтерева. Он приехал в Москву на научные съезды, но смог принять участие только в совещаниях невропатологов и психиатров. Неожиданная кончина В. М. Бехтерева тяжело...»

«1 1. Измельчение В Термомиксе можно измельчать любые овощи и...»

«Познание Бога Elaion-Verlag CH-9428 Walzenhausen Elaion CH-9428 Walzenhausen Заказывать Gemeinde-Lehrdienst Заказной-№ 15 RUS Название немецкого издания оригинала: „Die Erkenntnis Gottes“, 2. Auflage 1999 1. Русское издание 2006 Перевод и корректировка русско-немецких братьев и сестёр Оформление обложки, набор, печать и изготовление Gemeinde-Lehrdienst, CH-9428 Walzenhausen Содержание Предисловие Примечание переводчика Сверхъестественное общение Познание Бога Очевидные успехи Вы – храм Двор в...»






 
© 2013 www.knigi.konflib.ru - «Бесплатная электронная библиотека»

Материалы этого сайта размещены для ознакомления, все права принадлежат их авторам.
Если Вы не согласны с тем, что Ваш материал размещён на этом сайте, пожалуйста, напишите нам, мы в течении 1-2 рабочих дней удалим его.