4965

Создание новых типов данных

Лекция

Информатика, кибернетика и программирование

Создание новых типов данных Для представления данных о сложных физических и математических объектах необходимо создавать новые типы данных на основе базовых и ранее созданных. Структуры Наиболее простым способом создания нового типа данных является...

Русский

2012-11-30

30.5 KB

3 чел.

Создание новых типов данных

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

Структуры

Наиболее простым способом создания нового типа данных является организация структуры.

Структура представляет собой последовательность элементов данных разных типов. Элементы данных называют полями структуры. Каждое поле структуры служит для описания некоторого свойства объекта, описываемого с помощью структуры.

Для создания структуры необходимо создать структурированный тип данных. На языке С++ он описывается следующим образом:

struct имя_типа

{тип_поля1 имя поля1;

тип_поля2 имя поля2;

тип_поля3 имя поля3;

};

Пример структурированного типа

struct Person

{char fam[10];

 int age;

}

Только после создания нового типа данных можно создавать переменные, указатели и массивы этого типа.

Пример структурированных переменных, указателей и массивов

Person A;

Person B[3];

Person *p;

Очевидно, что формат  описания переменной нового типа данных практически ничем не отличается от переменной, например, целочисленного типа данных:

int i;

Для доступа к полям структуры используется операция .

Формат операции . следующий:

Имя_структуры.имя_поля

Пример доступа к полям структур

A.age=25;

Доступ к полям структур, являющихся элементами массива структур, выглядит следующим образом:

имя_массива[номер_структуры].имя_поля

Пример доступа к полям структур в массиве структур

B[1].age=30;

Над структурами стандартом языка С разрешена только операция присваивания. Все остальные операции могут быть только над полями структуры.

Действия над структурами

Обычно действия над структурами и массивами оформляется в виде отдельных функций. Сами структуры или адреса массивов структур передаются в функции через параметры.

Пример программы вычисления среднего значения поля age по массиву структур

#include <stdio.h>

#include <conio.h>

struct Person

{char fam[10];

 int age;

}

int fSred(Person *p, int n);

int fSred(Person *p, int n)

{

int i, s=0;

for(i=0; i<n;i++)

s+=p[i];

return(s/n);

}

main()

{

Person B[3];

int n =3, i, sr;

for(i=0; i <n;i++)

{printf("Input name");

  scanf("%s",p[i].fio);

  printf("Input age");

  scanf("%d",&p[i].age);

}

sr=fSred(B,3);

printf (sr="%d\n",sr);

getch( );

}

Таким образом, при работе со структурами действия оформляются в виде функций отдельно от данных, а данные передаются в функции через параметр. Доступ ко всем элементам данных открытый.

Объединение данных и действий над ними в виде класса, в котором вводятся ограничения на доступ к данным, породило технологию объектно-ориентированного программирования.


 

А также другие работы, которые могут Вас заинтересовать

32466. Направление технического прогресса в СКС и Т 27.5 KB
  Современная индустрия туризма за последние годы притерпела вестма существенные изменения в связи с внедрением новых компьютерных технологий успешное функционирование любой фирмы на рынке туристского бизнеса практически не мыслимо без использования современных информационных технологий. Современные компьютерные технологии активно внедряются в сферу туристского бизнеса и их применение становится неотъемлемым условием повышения конкурентоспособности любого туристского предприятия. Возможность формирования новых маркетинговых каналов...
32467. Инфраструктура предприятий сервиса. Технические средства предприятий (организаций) социально-культурного сервиса и туризма 31 KB
  Тип гостиничной телефонной станции зависит от количества абонентных точек назначения гостиницы и ее расположения. Для облегчения связи с работниками управления и администрации гостиницы телефонное оборудование может быть укомплектовано телефонной системой. Устройство внутренней связи: важный фактор эффективности работы гостиницы. Телетайпфакс представляет собой систему письменной телекоммуникации обслуживающую как администрацию гостиницы так и клиентов.
32468. Задачи технического и технологического оснащения предприятий 27.5 KB
  Технология совокупность методов обработки изготовления изменения состояния свойств формы сырья материала или полуфабриката применяемых в процессе производства для получения готовой продукции наука о способах воздействия на сырье материалы и полупродукты соответствующими орудиями производства. Развитие науки и техники способствует совершенствованию средств массового производства туристских услуг материальнотехнической базы в гостиничном хозяйстве на транспорте в бюро путешествий.
32469. Модернизация технических средств предприятий СКС и Т 26 KB
  Бурное развитие туристкой индустрии в последнее десятилетие связано в 2мя факторами: развитием гражданской авиации и созданием компьютерных систем бронирования. В свою очередь увеличение числа авиалиний самолетов а так же рост объемов авиаперевозок закономерно привели к необходимости создания и использования компьютерных систем бронированияCRS которые стали основным инструментом для резервирования авиабилетов. Теперь в системах бронирования заложена информация не только о наличие мест но и общая информация о рейсах.
32470. Технология художественных изделий из керамики 498.54 KB
  Обжиг керамических изделий 3й разряд Сформировать знания о процессе обжига керамических изделий его видах и способах. Назначение и суть обжига керамических изделий. Виды и способы обжига. Объясняет назначение обжига керамических изделий виды и способы обжига правила загрузки и выгрузки изделий устройство обжиговых печей.
32471. Формование керамических изделий и его виды 103.77 KB
  Способы формования керамических изделий Исходя из содержания воды в формовочной массе различают следующие основные способы формовки: способ литья содержание воды 2534; пластический способ воды 1625 это свободная лепка формование на гончарном круге ручной оттиск в форме формование по вращающейся гипсовой форме с помощью шаблона или ролика; полусухой способ 716 влажности; сухой способ 27 влажности. Литье Этот способ широко применяется в производстве художественных керамических изделий что объясняется возможностью...
32472. Ручная роспись керамических изделий, подготовка, инструменты 32.21 KB
  Пером расписывают изделия прошедшие утельный или политой обжиг. Кистью можно наносить на изделия цветные массы ангобы глазурь. Роспись на изделиях можно производить без нанесения предварительного контура и по заранее нанесенному припорохом рисунку. На отводку поступают изделия предварительно оформленные основным декором.
32473. Декорирование изделий в сыром виде 15.92 KB
  Способы нанесения декора на керамический материал Декорирование является важным этапом в общем цикле технологического процесса по изготовлению художественных керамических изделий. Декорирование керамических изделий можно вести как живописным так и скульптурным методом. К живописному относят роспись изделий а также нанесение на них сплошных или частичных декоративных покрытий керамическими красками глазурями ангобами люстрами и эмалями.
32474. Сушка изделий, ее назначение, виды сушки 13.79 KB
  Сушка керамических изделий полуфабрикатов может быть естественной на открытом воздухе под навесами в сараях и т. К недостаткам туннельных сушилок относятся: большое количество вагонеток и необходимость их пополнения подверженность металлических изделий вагонеток коррозии неравномерность сушки изделий по поперечному сечению туннеля вверху температура теплоносителя выше чем внизу и необходимость круглосуточной загрузки и разгрузки вагонеток. Недостатки камерных сушилок: неравномерная сушка изделий изза различной температуры...