русс | укр

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

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

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

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


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

Синтаксис и правила


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


Структура создается при помощи ключевого слова struct, за которым следуют необязательное поле тега (tag) и список элементов структуры. Поле тега используется для создания других переменных данного структурного типа. Синтаксис структуры с необязательным полем тега:

struct поле тега {

тип_элемента элемент].;

тип_элемента элемент2;

тип_элемента элементЗ;

тип_элемента элемент^N;

};

В некоторых примерах используется структура, подобная следующей:

struct stboat { // катер

char sztype [iSTRING15 + iNULL_CHAR]; // тип

char szmodel [iSTRING15 + iNULL_CHAR]; // модель

char sztitle [iSTRING20 + iNULL_CHAR]; // бортовой номер

int iyear; // год выпуска

long int lmotor_hours; // ресурс двигателя

float fsaieprice; // продажная

стоимость

};

Данная структура создана при помощи ключевого слова struct, за которым следует поле тега или тип структуры. В этом примере stboat является теговым полем структуры.

Объявление этой структуры содержит несколько элементов: sztype, szmodel и sztitle являются строками заданной длины, заканчивающимися null-символом. За ними следуют целое iyear, длинное целое lmotor__hours и число с плавающей точкой fsaieprice. Эта структура используется для хранения коммерческой информации о катере или лодке.

Описан новый гипотетический структурный тип stboat. Однако, с этой структурой не связана никакая переменная; для этого в программе можно использовать следующий оператор:struct stboat stusecUDoat;

Этот оператор описывает переменную stused_boat, имеющую тип struct stboat. В объявлении нужно использовать поле тега структуры. Если данный оператор располагается в некоторой функции, то структура stused__boat имеет локальную область действия внутри этой функции. Если оператор находится в программе вне всех функций, то структура имеет глобальную область действия. Также можно объявить структурную переменную, используя следующий синтаксис:



struct stboat {

char sztype [iSTRING15 + iNULL_CHAR];

char szmodel [iSTRING15 + iNULL_CHAR];

char sztitle[iSTRING20 + iNULL_CHAR];

int iyear;

long int lmotor_hours;

float fsaieprice;

} stused_boat;

Объявление переменной заключено между фигурной скобкой, закрывающей структуру (}), и обязательной точкой с запятой. В обоих примерах переменная stused_boat объявляется как структура типа stboat. На практике, если со структурным типом связывается только одна переменная, поле тега можно убрать, поэтому предыдущий пример можно записать и так:

struct {

char sztype [iSTRING15 + iNULL_CHAR];

char szmodel [iSTRING15 + iNULL_CHAR];

char sztitle[iSTRING20 + iNULL_CHAR];

int iyear;

long int imotor hours;

float fsaieprice;

} stused_boat;

В этом объявлении структуры отсутствует поле тега и создается анонимный структурный тип. Поскольку оператор описывает единственную переменную, stused_boat, то нигде в приложении нельзя создать другую переменную такого же типа. Если поле тега структуры отсутствует, то такой синтаксис не позволяет ссылаться на этот новый тип. Но с одним структурным типом можно связать несколько переменных, не указывая поле тега.

Пример:

struct {

char sztype [iSTRING15 + iNULL_CHAR];

char szmodel [iSTRING15 + iNULL_CHAR];

char sztitie[iSTRING20 + iNULL_CHAR];

int iyear;

long int Imotor_hours;

} float fsaieprice;

} stboat1,stboat2,stboat3;



<== предыдущая лекция | следующая лекция ==>
Динамическая память | Объединения


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


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

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

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


 


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

 
 

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

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