Оглавление
Часть 2
Конспект лекций
Разработка программ при работе с массивами
Примеры: задачи разделения и слияния массивов, перестановка сегментов массива (циклический сдвиг) и т.п. Линейный и бинарный поиск в массиве. Простые алгоритмы сортировки (выбором, вставками, обменами). Работа с двумерными и многомерными массивами.
Часть 2. 1
Оглавление. 2
8. Указатели. 4
8.1. Указатели. 4
Понятие указателя. 4
Работа с указателями. 5
Арифметика указателей. 7
Ошибки при работе с указателями. 8
8.2. Указатели и массивы.. 10
9. Функции и структура программы.. 12
9.1. Создание и использование функций. 13
Процедурный подход к разработке программ.. 13
Определение функций в программе. 19
Завершение работы функции (инструкция return) 20
Список параметров функций. 21
Обращение к функциям в программе. 21
Передача данных по значению.. 22
Передача данных с помощью указателей. 23
Передача данных по ссылке. 25
Перегружаемые функции. 26
Параметры по умолчанию.. 27
|
|
Функции с переменным числом параметров. 27
Рекурсивное использование функций. 29
Передача функций в качестве параметров. 32
Встраиваемые функции (inline - функции) 33
Прототипы функций. 34
9.2. Структура программы. Глобальные и локальные данные (области видимости и время жизни) 35
Структура программы.. 35
Глобальные и локальные данные. 35
Классы памяти. 36
Многофайловые проекты.. 39
10. Структуры, объединения, перечисления. 39
10.1. Структуры.. 39
Определение структур. 39
Доступ к полям структур. 40
Указатели на структуры.. 42
Структурные параметры функций. 42
Битовые поля структур. 44
10.2. Объединения. 45
Обычные объединения. 45
Анонимные объединения. 46
10.3. Перечисления. 47
11. Организация ввода/вывода и работа с файлами. 48
11.1. Потоки для работы с файлами. 48
Общие сведения. 48
Пример работы с файлом.. 48
Создание потока, открытие и закрытие файла. 49
Запись и чтение данных в текстовых файлах. 51
Запись и чтение данных в двоичном режиме. 51
Как обнаружить конец файла?. 54
Прямой доступ при работе с файлами. 54
Статус потоков ввода-вывода. 55
Некоторые другие функции управления потоками ввода-вывода. 56
Примеры по работе с файлами. 56
12. Работа с динамической памятью.. 59
Распределение памяти при работе программы.. 59
Динамическое выделение и освобождение памяти в стиле C++.. 59
Динамическое выделение и освобождение памяти в стиле C.. 62
Возможные ошибки при работе с динамической памятью.. 63
Динамические массивы.. 64
Одномерные однонаправленные списки. 70
Одномерные двунаправленные списки. 70
Многомерные списки. 70
Стек. 70
8. Указатели
Указатели и ссылки являются одними из самых важных и достаточно сложных для понимания и использования средств языка программирования. Они ориентированы на прямую работу с памятью компьютера. С помощью этих средств реализуется работа с динамической памятью и динамическими объектами, возвращение из функций измененных данных и многое другое. К использованию указателей и ссылок мы будем неоднократно возвращаться в последующих разделах.
|
|