русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Объявление структуры


Дата добавления: 2015-06-12; просмотров: 524; Нарушение авторских прав


Структура (запись на языке Pascal) — составной (смешанный, сложный, структурированный) тип данных, который под одним именем объединяет несколько переменных разных типов, которые называются полями (элементами или членами) структуры. В качестве полей могут быть переменные простых типов, массивы, структуры и некоторые другие типы. Если в ”старом” языке C в структуру можно было включать только переменные, то в более поздней версии языка, в С++, структура может содержать, как и класс, функции для обработки полей, которые также называются методами. Сравнение структуры и класса смотри в §4.

Существует несколько способов объявления переменной структурированного типа.

В первом способе сначала объявляем тип структуры, а затем по мере надобности используем этот тип для объявления переменных. Такой способ назовём раздельным объявлением. Например,

struct tstr1

{ char name[20];

int arr[12];

float Par;

};

Здесь struct — ключевое слово, tstr1 — название типа по правилам записи идентификаторов. В фигурных скобках по правилам объявления обычных переменных описываем поля структуры: название в виде статической строки, целочисленный массив из 12 элементов и вещественный параметр. Затем объявляем одну или несколько переменных данного типа:

tstr1 S1, S2;

При этом тип и переменные могут быть описаны в одной функции или тип описывается на глобальном уровне, а переменные — в одной или нескольких функциях.

Второй способ назовём совместным объявлением типа и переменной. Например,

struct tPoint

{ float x, y, z;

} Point1, Point2;

При необходимости, как и в первом варианте, можем использовать тип tPoint для объявления других переменных, например, tPoint P3;

Допускается, но на практике редко используется третий способ, так называемое анонимное объявление, при котором имя типа не указывается.



const n=7;

struct { int a [n];

float Aver;

} A1, A2;

Понятно, что при таком способе невозможно использовать определённый таким образом тип для объявления новых переменных, так как нет имени типа.

Тип (tstr1, tPoint) представляет собой абстрактное понятие, шаблон (заготовку) для создания реально существующей в оперативной памяти переменной структурного типа (S1, S2, Point1, Point2,P3, A1,A2). Такую переменную иногда называют экземпляр структуры. Оперативная память отводится не для типа (например, tstr1), а для переменных (S1 и S2). Её объём для каждой переменной типа структуры равен сумме байт, занимаемых каждым полем структуры. Например, переменная A1 занимает память, объём которой равен: 7*4 (для массива a) + 4 (для переменной Aver)=32байта.

В качестве простого упражнения предлагается самостоятельно определить объём памяти для остальных переменных структурного типа.



<== предыдущая лекция | следующая лекция ==>
С. Задачи повышенной сложности. | Работа со структурой.


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.729 сек.