
- •1.4 Основы концепции .Net
- •1.5 Программные системы ms vs.Net, комментарии.
- •1.7 Современные системы разработки с программ
- •1.10 Зона видимости функций, взаимосвязь с ресурсами.
- •1.11 Образное представление функций и их вызовов в программной памяти.
- •1.12 Что такое переменная, три уровня интерпретации.
- •1.15 Квалификаторы классов памяти в с, комментарии.
- •1.17 Размещение массивов в памяти, варианты обращения к элементам.
- •1.19 Что из себя представляет программа в памяти эвм, дизайн образа.
- •2.1 Заголовочные файлы, назначение, примеры
- •2.3 Что такое библиотеки stl (один из авторов) и atl, назначение.
- •2.4 Функции в с, назначение, программный дизайн, примеры.
- •2.5 Inline – функции в с, особенности их использования
- •2.6 Вызовы функций по значению и по ссылке, смысловое содержание.
- •2.7 Организация вызовов функций по ссылке, варианты, примеры.
- •2.8 Вызов функции через использование параметра – ссылки – псевдонима переменной.
- •2.12 Что такое сигнатуры – уникальные кодовые идентификаторы, пример.
- •2.16 Передача массивов функциям, варианты, примеры.
- •3.1 Переменная в программировании, назначение, отличительные особенности.
- •3.12 Концептуальное назначение массивов в программировании, примеры.
- •3.13 Примеры действий над массивами в с.
- •3.15 Символьные массивы и строки в с, примеры.
- •3.17 Отличительные особенности локальных массивов классов памяти auto и static.
3.12 Концептуальное назначение массивов в программировании, примеры.
К массивам не принято применять термин «встроенный тип данных», хотя по сути реализация массивов – аналогия полная. Массивы предназначены для работы с группами встроенных типов данных. Массивы могут работать с группами объектов, созданных на основе новых типов (созданных программистом).
Какая группа элементов может размещаться в массиве?
Переменные одного типа, связанные между собой логически.Могут быть разные на практике (при новых типах данных, объединенных в массив). Массивы являются статической конструкцией в С/С++ (размерность не переопределяется). ReDim – переопределение – динамика. В С/С++ есть еще одна статическа конструкция, позволяющая работать с группами данных – структура. В С/С++ есть и динамические программные конструкции для работы с группами данных: стеки, деревья, очереди. Основаны на стуктурах.
3.13 Примеры действий над массивами в с.
int n[10]; // определение целочисленного массива с именем «н» и 10ю элементами
a=n[0]; // обращение к первому элементу массива
Индекс – исключительно целое число или переменная
int a.b;
a=1; b=2;
c=n[a+b]; // обращение к 4му элементу 10ти местного массива.
В VS С++ 6.0 – это компилятор не принимает. Выражение не использует, а тольк одну переменную. В VS 9.0 – ошибки нет.
3.15 Символьные массивы и строки в с, примеры.
char name_array[]={…};
char name_array[]=”second”; 6 cимволов, ячеек 7 по 1му байту.
Строковый литерал=набор литералов=массив символов
char name_array[7]={‘s’, ’e’, ’c’, ’o’, ’n’, ’d’, ’d‘, ‘\0’}; в реальности в С \0 - конец строки, конец строкового литерала. В исходном С программист управляем им вручную. За размерностью массива следит программист.
3.17 Отличительные особенности локальных массивов классов памяти auto и static.
Какие квалификаторы используются для определения автоматической переменной? – Auto, для статической переменной – Static (замороженная переменная).
Если массив объявлен как Auto, то инициализировать нужно перед использованием (или нужными значениями). Если Static, но инициализировать не нужно – компилятор это сделает сам.