Тема 1. Данные
1.1 Пространства имен Директива using.
Пространство имен стандартной библиотеки.
Неименованные пространства имен.
Псевдонимы пространств имен.
Тема 2. Массивы
2.1 Многомерные массивы
Эквивалентные указатели на многомерные массивы.
2.2 Динамическое выделение памяти.
Динамические массивы.
Операторы new и delete.
Формы оператора delete.
Способы создания динамических двумерных массивов.
Практические занятия
1. Создание (и уничтожение) динамических массивов.
2. Операторы new и delete.
3. Указатели на многомерные массивы.
Тема 3. Функции
3.1 Функции и массивы
Передача функции указателя на массив.
3.2 Перегрузка имен функций.
Рекурсивные функции.
Перегрузка имен функций.
Использование рекурсивных функций.
3.3 Переменное число параметров.
Файловый ввод/вывод.
Переменное число параметров.
"Старые" потоки ввода/вывода языка С.
Функции printf и scanf.
Ключи формата ввода/вывода.
Файловый ввод/вывод. Диагностика ошибок.
3.4 Указатели на функции.
Сложные указатели.
Указатель на функцию.
Вызов функции с помощью указателя.
Использование указателей на функции в качестве параметров.
Массив указателей на функции.
Примеры сложных объявлений функций и указателей на функции.
Практические занятия
1. Передача функции указателя на массив (встроенный массив, динамический массив).
2. Функции с переменным числом параметров
3. Рекурсивные функции
4. Указатель на функцию. Указатель на функцию в качестве аргумента другой функции
5. Массивы указателей на функции
Тема 4. Типы данных, определяемые пользователем
4.1 Структуры языка Си.
Структуры и функции.
Назначение структур.
Использование структур.
4.2 Битовые поля.
Объединения языка Си.
Назначение битовых полей.
Использование битовых полей.
Назначение объединений.
Использование объединений.
Практические занятия
1. Объявление структуры.
2. Создание экземпляров пользовательского типа.
3. Использование структур: массив объектов пользовательского типа, передача агрегатного объекта в функцию.
4. Пример использования структур - картотека.