Брайан Керниган - Язык программирования Си. Издание 3-е, исправленное
- Название:Язык программирования Си. Издание 3-е, исправленное
- Автор:
- Жанр:
- Издательство:Невский Диалект
- Год:2001
- Город:Санкт-Петербург
- ISBN:0-13-110362-8
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Брайан Керниган - Язык программирования Си. Издание 3-е, исправленное краткое содержание
Книга широко известных авторов, разработчиков языка Си, переработанная и дополненная с учетом стандарта ANSI для языка Си, 2-е английское издание которой вышло в 1988 году, давно стала классикой для всех изучающих и/или использующих как Си, так и Си++. Русский перевод этой книги впервые был выпущен изд- вом "Финансы и статистика" в 1992 г. и с тех пор пользуется неизменным спросом читателей.
Для настоящего третьего русского издания перевод заново сверен с оригиналом, в него внесены некоторые поправки, учитывающие устоявшиеся за прошедшие годы изменения в терминологии, а так же учтены замечания, размещенные автором на странице http://cm.bell-labs.com/cm/cs/cbook/2ediffs.html.
Для программистов, преподавателей и студентов.
Издание подготовлено при участии издательства "Финансы и статистика"
Язык программирования Си. Издание 3-е, исправленное - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
присваивания 1.5.1, 1.5.4, 2.10, A7.17
выражение-инструкция 3.1, 3.2, A9.2
вычисление, порядок 1.5.4, 2.9, 2.12, 3.5, 4.3, 4.11.2, 5.1, A7
вычитание из указателя 5.4, 6.4, A6.6
грамматический разбор методом рекурсивного спуска 5.12
граничные условия 1.5.2, 3.7
деление целых 1.2, 2.5
дерево
бинарное 6.5
разбора 5.12
дескриптор файла 8.1
длина
имени 2.1, A2.3
переменной A2.3
строки 2.3
единица трансляции A2, A7.17, A8.2
завершение программы 7.6
загадочные числа 1.4
знак, размножение 2.7, A2.5.2
идентификатор A2.3
имени затенение 4.8
имен пространство A11.1
именующее выражение функции A7.3.2
имя A2.3
индекс отрицательный 5.3
индексирование массива 1.6, 5.3, A7.3.1, A8.6.2
и указатели 5.3, A8.6.2
инициализатор 4.9, A8.7
инициализация 2.4, 4.9, A8.7
в блоке 4.9, A9.3
двумерных массивов 5.7, A8.7
массива 4.9, 5.8, A8.7
массивов структур 6.3
объединения A8.7
переменных
автоматических 1.10, 2.4, 4.9, A8.7
внешних 2.4, 4.4, 4.9, A8.7
статических 2.4, 4.9, A8.7
по умолчанию 4.9, A8.7
строковой константой 4.9, A8.7
структуры 6.1, A8.7
указателя 5.4
инструкции A9
выбора A9.4
перехода A9.6
присваивания вложенные 1.5.1, 1.5.4, 2.11
последовательность выполнения A9.3
инструкция
окончание 1.5.2, 3.1
помеченная A9.1
пустая 1.5.2, A9.2
исключительные ситуации B9
квалификатор типа A7.17, A8.2
ключевые слова A2.4
командная строка аргументов 5.10
комментарий 1.2, A2.2, A12
компиляция
нескольких файлов 4.1
раздельная 4, 4.4, A11
Си-программ 1.1, 1.7
конец файла см. EOF
конкатенация
лексем 4.11.2, A12.3
строк 2.3, 4.11.2, A2.6
константа 2.3, A2.5
восьмеричная 0... 2.3, A2.5.1
из расширенного набора A2.5.2
перечисления 2.3, A2.5.4, A8.4
символьная 1.5.3, 2.3, A2.5.2
с плавающей точкой 1.2, 2.3, A2.5.3
строковая 1.1, 1.5.3, 1.9, 2.3, 5.3, 5.5, A2.6
суффикс 2.3, A2.5.1
тип 2.2, A2.5
шестнадцатеричная 0x... 2.3, A2.5.1
константное выражение 2.3, 3.4, 4.11.3, A7.19
лексема A2.1, A12.3
конкатенация 4.11.2, A12.3
подстановка A12.3
лексика, соглашения A2
лексикографическая сортировка 5.11
лексическая область видимости A11.1
литерал строковый см. константа строковая
макро-процессор 4.11, A12
см. также препроцессор
макрос
расширение A12.3
с аргументами 4.11.2
feof 8.5
ferror 8.5
getc 8.5
putc 8.5
массив
а не указатель 5.3, 5.5, 5.7
двумерный 5.7, A8.7
имя в роли аргумента 1.8, 5.3, 5.7
индексирование в 1.6, 5.4, A7.3.1
многомерный 5.7, A8.6.2
объявитель A8.6.2
объявление 1.6, 5.7, A8.6.2
порядок элементов в памяти 5.7, A8.6.2
преобразование имени 5.3, A7.1
размер по умолчанию 4.9, 5.8, 6.3
символов 1.9, 5.5
ссылки на элементы A7.3.1
структур 6.3
инициализация 6.3
указателей 5.6
масштабирование целых в арифметике с указателями 5.4, 6.4, A7.7
метка 3.8, A9.1
область видимости 3.8, A9.1, A11.1
case 3.4, A9.1
default 3.4, A9.1
многопутевое ветвление 1.6, 3.3
многоточие ... 7.3, A7.3.2
множественное присваивание 1.5
модульность 1.7, 1.9, 1.10, 4, 4.3, 5.6
небуферизованный getchar 8.2
незавершенный тип A8.3
неоднозначность if-else 3.2, A9.4, A13
неправильная арифметика с указателями 5.4, 6.4, A7.7
несоответствие типов объявлений 4.2
нотация синтаксиса A3
нуль, опущенная проверка на нуль 3.2, 5.5
область видимости A4, A11.1
автоматических переменных 4.4, A11.1
внешних объектов 4.4, A11.1
лексическая A11.1
меток 3.8, A9.1, A11.1
правила определения 4.4, A10_2
обобщенный указатель см. void * , указатель
обратная польская запись 4.3
объединение, тег A8.3
объект A4.1, A5
объявитель A8.5
абстрактный A8.8
массива A8.6.2
функции A8.6.3
объявление 1.2, 2.4, A8
а не определение 1.10, 4.4, A8.1
битового поля 6.9, A8.3
внешнее A10, A10.2
внешней переменной 1.10, A10
класса памяти A8.1
массива 1.6, 5.7, A8.6.2
структуры 6.1, A8.3
типа A8.6
указателя 5.1, 5.3, A8.6.1
функции A8.6.3
неявное 1.7, 4.2, A7.3.2
новым способом A7.3.2
старым способом 1.7, 1.10, 4.2, A7.3.2
typedef 6.7, A8.1, A8.9
union 6.8, A8.3
оператор
больше > 2.6, A7.9
больше или равно >= 2.6, A7.9
вычитания - 2.5, A7.7
декремента -- 1.5.2, 2.8, 5.5, A7.3.4, A7.4.1
деления / 1.2, 2.5, A7.6
деления по модулю % 2.5, A7.6
доступа к элементу структуры
точка . 6.1, A7.3, A7.3.3
через указатель -> 6.2, A7.3
запятая , 3.5, A7.18
инкремента ++ 1.5.2, 2.8, 5.5, A7.3.4, A7.4.1
косвенного доступа * 5.1, A7.4.3
логический отрицания ! 2.6, A7.4, A7.4.7
логического И && 1.5.4, 2.6, 2.9, A7.14
логического ИЛИ || 1.5.4, 2.6, 2.9, A7.15
меньше < 2.6, A7.9
меньше или равно <= 2.6, A7.9
неравенства != 1.5.1, 2.6, A7.10
побитового отрицания ~ 2.9, A7.4.6
получения адреса & 5.1, A7.4.2
приведения к типу 2.7, 2.7, 6.5, A6.6, A7.5, A8.8
присваивания = 1.5.1, 2.6, A7.17
присваивания += 2.10
равенства == 1.5.3, 2.6, A7.10
сдвига влево << 2.9, A7.8
сдвига вправо >> 2.9, A7.8
сложения + 2.5, A7.7
умножения * 2.5, A7.6
унарного минуса - A7.4.5
унарного плюса + A7.4.4
sizeof 4.11.3, 5.4, 6.3, A7.4, A7.4.8
операторы
аддитивные A7.7
арифметические 2.5
ассоциативность 2.12, A7
мультипликативные A7.6
отношения 1.5.1, 2.6, 2.7, A7.9
побитовые 2.9, A7.11
приоритет 1.5.1, 2.12, 5.1, 6.2, A7
присваивания 2.6, 2.10, A7.17
равенства 2.6, A7.10
операции над
объединениями 6.8
указателями 5.4
определение
аргумента 1.7, A7.3.2
внешней переменной 1.10, A10.2
макросов A12.3
памяти A8
параметра 1.7, A7.3.2
пробное A10.2
удаление см. #undef
функции 1.7, 4.1, A10.1
опущенный спецификатор
класса памяти A8.1
типа A8.2
отбрасывание
значения с плавающей точкой 2.7, A6.3
при делении 1.2, 2.5, A7.6
отрицательные индексы 5.3
отступы в тексте программы 1.2, 1.5.3, 1.6, 3.2
память
автоматическая 1.10, A4.1
класс A4.1
объявление класса A8.1
определение A8.1
распределитель 6.5, 8.7
резервирование A8.1
спецификатор класса A8.1
опущенный A8.1
статическая 1.10, 4.6, A4.1
параметр 4.7, 5.3, A7.3.2
определение 1.7, A7.3.2
первичное выражение A7.2
переменная A4
автоматическая 1.8, 4.3, A4.1
адрес 1.8, 5.1, A7.4.2
внешняя 1.10, 4.3, A4.1
синтаксис имени 2.1, A2.1
переносимость Введение, 2.3, 2.7, 6.7, 7, 8.6
переполнение A6, B4, B9
перечисление
константа 2.3, A2.5.4, A8.4
тег A8.4
тип A4.2
перечислитель A2.5.4, A8.4
побочный эффект 2.12, 4.11.2, A7, A7.3.2
повышение
типа аргумента 2.7, A7.3.2
целочисленное 2.7, A6.1
подмассив-аргумент 5.3
поле см. битовое поле
польская запись 4.3
порядок
в записи числа 2.3, A2.5.3
выполнения инструкций A9
вычислений 1.5.4, 2.9, 2.12, 3.5, 4.3, 4.11.2, 5.1, A7
трансляции A12
поток
бинарный 7.5, B1
текстовый 1.5, 7.1, B1
по умолчанию
инициализация 4.9, A8.7
размер массива 4.9, 5.8, 6.3
тип функции 1.9, A7.3.2
преобразование A6
даты 5.7
имени массива 5.3, A7.1
инструкцией return 4.2, A9.6
обычное арифметическое 2.7, A6.5
оператором приведения 2.7, A6.6, A7.5
присваиванием 2.7, A7.17
символ - целое 1.6, 2.7, A6.1
с плавающей точкой - целое 2.7, A6.3
указатель - целое A6.6
Читать дальшеИнтервал:
Закладка: