Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву
Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Записи. Операции над ними, способы представления, сложность операций.Содержание книги
Поиск на нашем сайте Запись (структура) - это набор из одной или более переменных, возможно различных типов, сгруппированных под одним именем для удобства обработки. Определяется следующим образом: Паскаль – record S1 of T1 S2 of T2 … Sn of Tn End В си – struct { T1 S1; T2 S2; … Tn Sn; } T1…Tn – типы данных; S1…Sn – поля записи. Все поля могут иметь разный тип. Имена полей – идентификаторы полей. Структура случайного доступа к компонентам. Все элементы начинаются каждый со своего места в памяти. Применяют для БД и анкет. Характеристики: 1)Мощность #record = #T1 * #T2 *… * #Tn; 2)Размер записи – сумма размеров всех ее типов Операции: 1)Можем обратиться к элементу записи, но не по индексу, а по имени A.name; 2)Присваивание А=В с помощью memcpy(A, B, sizeof B); 3)Сравнение А==В с помощью memcmp(A, B, sizeof B); 4)Инициализация A = {“Андрей”, “Иванович”, 1990, m}.
Хранение записей в памяти: Записи размещаются в памяти так, что их компоненты идут последовательно друг за другом. Если: · sizeof(эл) кратен sizeof(word) – одновременно упакованный и неупкованный способ хранения · ·
ОБЪЕДИНЕНИЯ. ОПЕРАЦИИ, ПРЕДСТАВЛЕНИЕ. СЛОЖНОСТЬ ОПЕРАЦИЙ. В Паскале – нет В Си – Union <имя> { T1 S1; T2 S2; … Tn Sn; } Все элементы начинаются с одно и того же места в памяти (если присваиваем новое значение элементу объединения, то перезаписываем любое предыдущее присваивание). Объединение может хранить значение только для одного элемента в каждый момент времени. Пример: иллюстрирует использование объединения distance. Сначала программа присваивает значение элементу miles и выводит это значение. Затем программа присваивает значение элементу meters. При этом значение элемента miles теряется: union distance { walk.miles = 5; Характеристики: 1)Размер – максимальный из размеров компонент sizeof (union) = max(sizeof Ti); 2)Мощность – мощность максимального типа #union = #max(Ti). Операции: 1)Индексация по имени; 2)Присваивание А=В через memcpy; 3)Сравнение А==В через memcmp(A, B, sizeof B); Объединения применяют для записей с вариантами (если в анкете, то каждый последующий порос зависит от предыдущего ответа).
|
||
|
Последнее изменение этой страницы: 2017-02-07; просмотров: 247; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.216.198 (0.007 с.) |