
- •Программа. Программирование.
- •Язык программирования. Синтаксис, семантика.
- •Способы представления алгоритмов. Язык блок-схем.
- •Этапы решения задач на эвм.
- •Информационная модель. Система.
- •Декомпозиция, композиция, редукция.
- •Атрибуты переменной. Объявление, определение и инициализация переменной.
- •Область видимости переменной. Время жизни переменной.
- •Типы данных в языках программирования. Переполнение типа данных.
- •Представление массивов в памяти. N-мерные массивы, тензоры.
- •Массивы и указатели. Массивы указателей и указатель на массив. Арифметика указателей.
- •Функции в языках программирования. Функция как подпрограмма. “Черный ящик”.
- •Концептуализация кода с помощью функций. Интерфейс функции. Процедура. Прототип функции.
- •Перегрузка функций. Правила вызова перегруженной функции. Сигнатура функции.
- •Рекурсия. Static-переменная функции.
- •Способы передачи аргументов в функцию.
- •1) Передача аргументов по значению
- •2) Передача параметров по ссылке
- •Архитектура Фон-Неймана. Принципы архитектуры Фон-Неймана.
- •Линейная память. Адресация.
- •Виртуальная память.
- •Процесс операционной системы. Основные разделы памяти процесса.
- •Стековая память.
- •Динамическая память или куча.
- •Статическая память.
- •Работа с файлами. Ввод/вывод на консоль.
- •Компилятор и компиляция. Сборка программы.
- •Интегрированная среда разработки.
- •Препроцессор и директивы препроцессора.
Представление массивов в памяти. N-мерные массивы, тензоры.
Массивы C++ размещаются в памяти по срокам. Построчный порядок означает, что быстрее всего изменяется последний индекс.
Первый элемент в массиве является элементом начальном. Последним элементом является элемент (n-1), где n — число элементов, которые может содержать массив. Число элементов в объявлении должно иметь целочисленный тип и должно быть больше 0.
Тензор — вид линейного многокомпонентного объекта, заданного на векторном пространстве конечной размерности.
Массивы и указатели. Массивы указателей и указатель на массив. Арифметика указателей.
В C++ указатели и массивы тесно связаны. Обычно компилятор преобразует массив в указатели. С помощью указателей можно манипулировать элементами массива, как и с помощью индексов.
Указатель – переменная, значением которой является адрес ячейки памяти.
Указатели на массивы
Имя массива всегда хранит адрес самого первого элемента. И нередко для перемещения по элементам массива используются отдельные указатели.
Указатель на массив символов
Поскольку массив символов может интерпретироваться как строка, то указатель на значения типа char тоже может интерпретироваться как строка.
Арифметика указателей в языке программирования C++.
Указатели могут участвовать в арифметических операциях (сложение, вычитание, инкремент, декремент). Однако сами операции производятся немного иначе, чем с числами. И многое здесь зависит от типа указателя.
К указателю можно прибавлять целое число, и также можно вычитать из указателя целое число. Кроме того, можно вычитать из одного указателя другой указатель.
Строки. Представление строк в C++. Таблица ASCII. Управляющие последовательности (escape). Терминальный нуль.
Строка — тип данных, значениями которого является произвольная последовательность символов алфавита.
Для хранения строк в C++ применяется тип string. Строки можно объявлять и одновременно присваивать им значения
Таблица ASCII — кодировочная таблица печатных символов, набираемых на компьютерной клавиатуре, для передачи информации и некоторых кодов. (128 символов)
Сочетания символов, состоящие из обратной косой черты (\), за которой следует буква или сочетание цифр, называются escape-последовательностями. Для представления символа новой строки, одинарной кавычки или некоторых других символов в символьной константе необходимо использовать escape-последовательности. Escape-последовательность рассматривается как один символ и, следовательно, является допустимой символьной константой.
Escape-последовательности обычно используются для указания действий, например возврата каретки или табуляции, на терминалах и принтерах. Они также используются для обозначения буквенных представлений непечатаемых символов, а также символов, которые обычно имеют специальное значение, например двойных кавычек ( " ). В следующей таблице перечислены escape-последовательности ANSI и представляемые ими значения.
Терминальный нуль (terminal null) '\0' - символ конца строки