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( );

}

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

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


 

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

27086. Информация в бизнесе. Информационная поддержка бизнеса 15.71 KB
  Информация сведения об объектах и явлениях окружающей среды их параметрах свойствах и состоянии которые воспринимают информационные системы живые организмы управляющие машины и др. Финансовоуправленческие системы включают подкласс малых интегрированных систем. Такие системы предназначены для ведения учета по одному или нескольким направлениям бухгалтерия сбыт склад кадры и т. Системы этого класса обычно универсальны цикл их внедрения невелик иногда можно воспользоваться коробочным вариантом купив программу и самостоятельно...
27087. Документооборот 14.98 KB
  Следует отметить что в этом определении упор делается на словах движение документов то есть их пути из одного подразделения или от одного сотрудника к другому. Автоматизация позволяет сократить время на обработку документов а также снижает риски случайной потери данных кроме того СЭД позволяет руководству контролировать выполнение управленческих решений. Возможность параллельного выполнения операций позволяющая сократить время движения документов и повышения оперативности их исполнения Непрерывность движения документа позволяющая...
27088. Корпоративная информационная система(КИС) 12.02 KB
  Основными блоками корпоративных информационных систем являются: система хранения база данных хранилище; система сбора и концентрации информации; системы поддержки принятия решений бизнеслогика базируется на обработке; специальные взаимодействия.
27089. ОСНОВНІ ВІДОМОСТІ ПРО ВАГОНИ. ТИПИ, ЗАГАЛЬНА БУДОВА, ТЕХНІКО-ЕКОНОМІЧНІ ПОКАЗНИКИ ВАГОНІВ. ПОЗНАЧКИ ТА НАДПИСИ НА ВАГОНАХ 337.5 KB
  Типи та конструкції сучасних вантажних, пасажирських та рефрижераторних вагонів являють собою доволі складну інженерну побудову. Тому інженери, що працюють в системі вагонного господарства залізничного транспорту та в вагонній промисловості, повинні добре знати конструкцію вагонів
27090. Архитектура CRM систем 91.83 KB
  архитектура CRM систем CRMсистема Customer Relationship Management System система управления взаимодействием с клиентами корпоративная информационная система предназначенная для улучшения обслуживания клиентов путём сохранения информации о клиентах и истории взаимоотношений с клиентами установления и улучшения бизнеспроцедур на основе сохранённой информации и последующей оценки их эффективности. Её основные принципы таковы: наличие единого хранилища информации откуда в любой момент доступны все сведения обо всех случаях...
27091. Архитектура erp систем 35.49 KB
  архитектура erp систем В начале 1990х гг. Системы класса MRPII в интеграции с модулемфинансового планирования Finance Requirements Planning FRP получили название систем планирования ресурсов предприятийEnterprise Resource Planning ERP. В основе ERPсистем лежит принцип создания единого хранилища репозитория данных содержащего всю корпоративную бизнесинформацию: плановую и финансовую информацию производственные данные данные по персоналу и др. Целью ERPсистем является не только улучшение управления производственной деятельностью...
27093. Организация процессов обработки данных в базе данных: формы, запросы, отчеты 38 KB
  Основными компонентами объектами базы данных являются таблицы запросы формы отчеты макросы и модули.Таблица фундаментальная структура системы управления реляционными базами данных. В Microsoft Access таблица это объект предназначенный для хранения данных в виде записей строк и полей столбцов.
27094. Понятие и функции базы данных. Предметная область 13.87 KB
  Основные предметнозначимые сущности: Книги Читатели. Основные предметнозначимые атрибуты сущностей: книги автор книги название год издания цена является ли новым изданием краткая аннотация; читатели номер читательского билета ФИО адрес и телефон читателя. Основные требования к функциям системы: выбрать книги которые находятся у читателей или определенного читателя; выбрать читателей которые брали ту или иную книгу с указанием даты выдачи книги и даты сдачи книги читателем; ...