русс | укр

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

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

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

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


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

Определение структур.


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


Определение структур.Определения элементов (компонентов) структурного типа внешне подобны определениям данных соответствующих типов. Однако имеется существенное отличие. При определении структурного типа его компонентам не выделяется память, и их нельзя инициализировать. Другими словами, структурный тип не является объектом.

Из нашего примера определения структурного типа с названием goods следует, что наименование товара будет связано с указателем типа char*,имеющим имя name. Оптовая цена единицы товара будет значением элемента типа longс названием price. Торговая наценка будет значением элемента типа floatс именем percent и т.д. Все это следует из приведенного определения структурного типа с названием goods. Но прежде чем элементы, введенные в определении структурного типа, смогут получить значения, должна быть определена хотя бы одна структура (т.е. структурированный объект) этого типа. Например, следующее определение вводит две структуры, т.е. два объекта, типа goods:

 



 



Итак, если структурный тип определен и известно его имя, то формат определения конкретных структур (объектов структурного типа) имеет вид:

structимя_структурного_типа список_структур;

 



где список_структур - список выбранных пользователем имен (идентификаторов).

Выше показано, что для структурного типа, имя которого введено с помощью служебного слова typedef,определение структур не должно содержать спецификатора типа struct.Например, указатель на структуры для представления комплексных чисел с помощью определенного выше обозначения структурного типа complex можно определить так:

 



 



Выше был определен структурный тип "рациональная дробь", для которого введены два имени. С их помощью так вводятся конкретные структуры:

 



 



Кроме изложенной последовательности определения структур (определяется структурный тип, затем с использованием его имени определяются структуры) в языке Си имеются еще две схемы их определения. Во-первых, структуры могут быть определены одновременно с определением структурного типа:

structимя_структурного_типа

{ определения_элементов }

список_структур;

 



Пример одновременного определения структурного типа и структур (объектов):

 



 



Здесь определен структурный тип с именем student и три конкретные структуры student_l, student_2, student_3, которые являются полноправными объектами. В каждую из этих трех структур входят элементы, позволяющие представить имя (name), фамилию (surname), курс (year), на котором обучается студент.

После приведенного определения в той же программе можно определять любое количество структур, используя структурный тип student:

 



 



Следующий вариант определения структур является некоторым упрощением приведенного варианта. Дело в том, что можно определять структуры, приведя "внутреннее строение" структурного типа, но не вводя его названия. Такой безымянный структурный тип обычно используется в программе для однократного определения структур:



<== предыдущая лекция | следующая лекция ==>
Структурный тип. | Выделение памяти для структур.


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


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

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

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


 


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

 
 

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

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