
- •1.Системы счисления.
- •2.Принцип программного управления.
- •3. Назначение и классификация языков программирования.
- •4.Понятие и состав систем программирования.
- •5. Понятие информации и алгоритмов.
- •6.Блок-схемы разветвляющихся алгоритмов.
- •7.Блок-схемы циклических алгоритмов.
- •8.Потоковый ввод/вывод данных.
- •9.Использование манипуляторов при вводе/выводе данных.
- •10.Управляющие коды-символы. Отображение специальных символов на экране монитора.
- •11.Форматированный ввод/вывод данных.
- •12.Строковый и символьный ввод-вывод информации.
- •14.Пространство имен. Ключевое слово using как директива.
- •15. Процессор и имена заголовочных файлов
- •16.Средства отладки программ ms vs
- •17.Выполнение приложения с использованием средств интерактивной отладки.
- •18.Выполнение приложения с использованием средств планируемой отладки.
- •20.Определение переменных. Переменные и константы.
- •Описание и инициализация переменных
- •Int k; // это переменная целого типа int
- •Задание и использование констант
- •21.Логические переменные и примеры их использования в программах.
- •22.Операции присваивания. Особенности выполнения. Условная операция ?:
- •Пример конструкции ветвления
- •25.Оператор перехода goto. Оператор return. Оператор return
- •Оператор goto
- •26.Особенности синтаксиса и выполнения операторов перехода continue, break.
- •Цикл for
- •Описание синтаксиса
- •30.Время существования и область видимости переменных (auto, static, extern, register).
- •31.Создание исполняемого файла.
- •32.Массив. Определение и инициализация массива.
- •Пример инициализации массива
- •33.Символы, строки (инициализация, алгоритмы). Символьный тип char
- •34.Стандартные функции работы со строками. Функции работы со строками c
- •35.Обработка символьной информации.
- •36.Инициализация многомерных массивов.
- •37.Матрицы. Инициализация, ввод, вывод, алгоритмы поиска в матрице.
- •38.Ввод, вывод двумерных массивов.
- •39.Операции над указателями. Типы указателей.
- •40. Указатели на указатели.
- •41.Указатели и строки.
- •42.Ссылочный тип данных.
- •43. Указатели на многомерные массивы.
- •44.Массивы и указатели. Понятие индекса. Инициализация. Доступ к компонентам.
- •45.Многомерные массивы. Связь между указателями и массивами. Связь между массивами и указателями
- •46.Объявление и определение функций.
- •47.Вызов и использование функций.
- •Возврат в вызывающую функцию
- •48.Способ передачи аргументов в функции. Массивы как параметры функций.
- •49.Перегрузка функций. Функции с переменным числом аргументов. Задание параметров функции по умолчанию.
- •50.Указатели как формальные параметры и как результат функций.
- •51.Ссылки как формальные параметры и как результат функций.
- •52.Использование указателей на функцию.
- •53.Передача указателя на функцию.
- •54.Использование макроопределений.
- •55.Динамические переменные. Основные свойства динамических переменных.
- •56.Динамические массивы.
- •57.Формирование динамических переменных с использованием библиотечных функций.
- •58.Формирование динамических переменных с использованием операций new и delete.
- •59.Массивы указателей как структура данных.
- •Типы данных, используемые при работе с массивами указателей
- •60.Многоуровневые указатели.
- •61.Динамические матрицы.
- •62.Передача параметров функции main. Передача параметров в функцию
- •Тип имя_функции (const тип_переменной* имя_переменной, …) Пример
30.Время существования и область видимости переменных (auto, static, extern, register).
Время жизни переменной может быть глобальным и локальным. Переменная с глобальным временем жизни характеризуется тем, что в течение всего времени выполнения программы с ней ассоциирована ячейка памяти и значение. Переменной с локальным временем жизни выделяется новая ячейка памяти при каждом входе в блок, в котором она определена или объявлена. Время жизни функции всегда глобально.
Область видимости объекта (переменной или функции) определяет, в каких участках программы допустимо использование имени этого объекта.
Область видимости имени начинается в точке объявления, точнее, сразу после объявителя, но перед инициализатором. Поэтому допускается использование имени в качестве инициализирующего значения для себя самого.
Объявления переменных в языке C++ имеют следующий синтаксис: [<спецификация класса памяти>] <тип> <описатель> [= <инициализатор>] [, <описатель> [= <инициализатор>] ...];
В языке C++ имеется четыре спецификации класса памяти:
auto
register
static
extern
Спецификации класса памяти auto и register могут быть использованы только на внутреннем уровне.
Переменная, объявленная на внешнем уровне, имеет глобальное время жизни. При отсутствии инициализатора такая переменная инициализируется нулевым значением. Область видимости переменной, определенной на внешнем уровне, распространяется от точки, где она определена, до конца исходного файла. Переменная недоступна выше своего определения в том же самом исходном файле. На другие исходные файлы программы область видимости переменной может быть распространена только в том случае, если ее определение не содержит спецификации класса памяти static.
Если в объявлении переменной задана спецификация класса памятиstatic, то в других исходных файлах могут быть определены другие переменные с тем же именем и любым классом памяти. Эти переменные никак не буду связаны между собой.
Спецификация класса памяти extern используется для объявления переменной, определенной где-то в другом месте программы. Такие объявления используются в случае, когда нужно распространить на данный исходный файл область видимости переменной, определенной в другом исходном файле на внешнем уровне
31.Создание исполняемого файла.
Исполни́мый (исполня́емый) мо́дуль, исполняемый файл — файл, содержащий программу в виде, в котором она может быть исполнена компьютером. Перед исполнением программа загружается в память, и выполняются некоторые подготовительные операции (настройка окружения, загрузка библиотек).
Обычно, в исполняемом файле данные(информация) хранятся в каком-либо формате и состоят из нескольких частей:
заголовки;
инструкции (код);
другое.
В заголовках могут указываться:
предполагаемые исполнители инструкций;
параметры (настройки) исполнителя инструкций и окружения;
формат инструкций (кода).
Исполнитель инструкций — это некий аппаратно-программный или программный комплекс, способный исполнить инструкции (код). Примеры исполнителей:
аппаратные реализации:
процессоры (например, процессоры семейств x86, SPARC);
микроконтроллеры (например, микроконтроллеры семействAVR, PIC);
интерпретаторы (например, Jazelle, PicoJava);
программные реализации:
интерпретаторы (например, shell, CPython, Perl, PHP, JavaScript,Ruby);
виртуальные машины
Инструкции (код) — это:
либо машинные инструкции[2], составленные из числа доступных исполнителю команд;
либо исходный код (сценарий, скрипт, псевдокод), записанный на одном из интерпретируемых языков программирования;
либо байт-код виртуальной машины.
Для уменьшения размера исполняемые файлы или их части могут сжиматься