Студенческий сайт КФУ - ex ТНУ » Учебный раздел » Учебные файлы »ПРОГРАММИРОВАНИЕ

Основы работы со структурами в языке программирование С++

Тип: курсовая работа
Категория: ПРОГРАММИРОВАНИЕ
Скачать
Купить
Разработка приложение в С++, содержащего различные структуры и выполняющее самого различного вида операции над ними. Создание четырех видов структур, которые характеризуют дату (время), свойства треугольника, свойства прямой и свойства комплексных чисел.
Краткое сожержание материала:

Размещено на

Введение

В данной курсовой работе предусматривается исследовать современные теоретические основы работы со структурами в языке С++. Структуры - это, своего рода сгруппированные данные, выражающие один объект. Структура может содержать сколько угодно и какие угодно типы данных. Они могут быть самыми различными, и вполне совместимы в пределах одной структуры. Например, если взять пример из математики, каждая точка может характеризоваться двумя признаками: расположением по оси х и расположением по оси у. В этом случае мы можем назвать точку структурой, состоящей из двух переменных (значений), вещественного типа, которые характеризуют координаты расположения точки на плоскости. В таких случаях, где один объект состоит из множества других объектов или имеет очень большую перечень свойств, их можно сгруппировать как одну структуру и применять их в ходе программы без никаких заблуждений и путаниц. Это облегчает работу программисту, который не располагает большим количеством времени, чтобы при выполнении какого-либо проекта он подетально вникал в подробности каждого объекта. В целях лучшего изучения способов создания, применения структур и выполнения различных операций над ними, предусмотрено разработать программу, содержащую несколько структур и операций над ними, потому что на практике научиться проще чем просто прочитать теорию. В нашем случае, теория будет закрепляться дальнейшей реализацией прочитанного и наглядно будет понятен принцип работы со структурами в языке С++.

Глава 1. Работа со структурами в среде Borland C++ Builder

1.1 Структуры в С++

Структурой называется совокупность логически связанных переменных различных типов, сгруппированных под одним именем для удобства дальнейшей обработки. Структура - это способ связать воедино данные разных типов и создать пользовательский тип данных. Структуры в С++ используются для логического и физического объединения данных произвольных типов, так же как массивы служат для группирования данных одного типа.

В общем случае при работе со структурами следует выделить четыре момента:

- объявление и определение типа структуры,

- объявление структурной переменной,

- инициализация структурной переменной,

- использование структурной переменной.

Структура в С++ задаётся следующим образом:

1:

2:

3: structdirection {

члены (элементы) структуры

};

voidmain()

{

TPoint O; //Объявили переменную O типа TPoint

}

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

structTPoint () //НЕВЕРНО

а после закрывающейся фигурной скобки стоит точка с запятой.

Объявление структуры всегда должно начинаться с ключевого слова struct. Необязательно, чтобы структура имела имя, но тогда такая структура обязательно должна иметь структурные переменные, объявленные между закрывающей фигурной скобкой и точкой с запятой. Обязательно в объявлении структуры должны присутствовать фигурные скобочки, они обрамляют тело структуры, в котором объявляются её атрибуты (элементы). Структурные переменные, при объявлении структуры, указывать необязательно.

Структурная переменная может быть задана уникальным образом:

struct //Определение анонимного типа структуры

{

char name[20];

charf_name[40];

chars_name[20];

} copymy; //Создание структурной переменной

1.2 Обращение к структуре

#include <conio.h>

#include <iostream.h>

structTPoint //Объявили новую структуру TPoint.

{

int x; //Первый параметр

int y; //Второй параметр

}; //После описания структуры ставят точку с запятой

voidmain()

{

clrscr();

TPoint O; //Объявили переменную O типа TPoint

O.x=30; //Присвоили первому параметру значение

O.y=100;//Присвоили второму параметру значение

getch();

}

В этом коде была объявлена переменная Oтип данных которой соответствует структуре TPoint

У структуры TPoint было объявлено 2 параметра. (x,y). При обращении к O программист должен обратиться к определенному параметру из структуры к которой Оотносится.

Чтобы создать вторую переменную с двумя параметрами, но отличающуюся от первой достаточно прописать

TPointO,А; //Объявили переменные O и A типа TPoint

TPointO,А; //Объявили переменные O и A типа TPoint

Код С++ структуры

#include <conio.h>

#include <iostream.h>

structTPoint //Объявили новую структуру TPoint.

{

int x; //Первый параметр

int y; //Второй параметр

}; //После описания структуры ставят точку с запятой

voidmain()

{

clrscr();

TPoint O, A; //Объявили переменные типа TPoint

O.x=30; //Присвоили первому параметру значение

O.y=100;//Присвоили второму параметру значение

A.x=130; //Присвоили первому параметру значение

A.y=10;//Присвоили второму параметру значение

getch();

}

Теперь в памяти хранятся 2 сгруппированные переменные типа TPoint. Каждой переменной соответствует по 2 параметра типа int

Теперь с элементами A.x,A.y,O.x,O.y можно работать как с обычными переменными int. Просто в примере был показан способ создания своего типа данных, в котором в одной переменной сгруппировано две. (В переменной O - две переменных типа int и в переменной Адве переменных типа int)

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

Можно сказать, что в предыдущей программе было объявлено две структуры Структура А и структура О.

Код С++ структуры

#include <conio.h>

#include <iostream.h>

structTPoint //Объявили новую структуру TPoint.

{

int x; //Первый параметр

int y; //Второй параметр

}; //После описания структуры ставят точку с запятой

voidmain()

{

clrscr();

TPoint O, A; //Объявили переменные типа TPoint

O.x=30; //Присвоили первому параметру значение

O.y=100;//Присвоили второму параметру значение

A=O; //теперь A.x=O.x=30, A.y=O.y=100;

//Выводим на экран структуры О и А

cout<<A.x<<endl;

cout<<A.y<<endl;

cout<<O.x<<endl;

cout<<O.y<<endl;

getch();

}

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

Работа со структурной переменной обычно сводится к работе с отдельными полями структуры. Доступ к членам структуры осуществляется посредством оператора . (точка):

1:

2:

3: direction.x = 0;

direction.y = 0;

direction.z = 1;

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

Под структурную переменную выделяется область памяти не менее суммы длин всех полей структуры,например,

struct list

{

char name[20];

charfirst_name[40];

int;

}L;

В данном примере объявляется тип структура с именем list, состоящая из трех полей, и переменная с именем L типа structlist,при этом для переменной L выделяется 64 байта памяти.

1.3 Использование структур

Структуры в С++ используются для логической или физической группировки объектов, имеющих общий контекст. Использование структур при написании собственных типов данных рекомендуется в том случае, если выполняется ряд условий:

* Создаваемый тип данных не имеет собственного поведения. То есть объект такого типа рассматривается как пассивный набор данных.

* Члены данных создаваемого типа данных не могут находиться во взаимно противоречивом состоянии. То есть любая комбинация значений членов структуры является допустимой.

Для более сложных пользовательских типов данных в языке С++ используются классы.

Структуры позволяют достаточно э...

Другие файлы:

Основы программирования на языке Turbo Pascal
Предназначено для студентов вуза, начинающих изучать программирование на языке Turbo Pascal и уже знакомых с основными конструкциями языка (развилки,...

Структуры и алгоритмы обработки данных: Примеры на языке Си
Рассмотрены структуры данных, их представление и алгоритмы обработки, без знания которых невозможно современное компьютерное программирование. Приведе...

Программирование на Visual C++ .NET
В книге рассматриваются такие современные технологии, как многозадачное программирование, программирование сокетов, Web-программирование (в т.ч. и со...

Программирование на языке C для AVR и PIC микроконтроллеров.
Юрий Шпак. Программирование на языке C для AVR и PIC микроконтроллеров.В книге рассмотрено программирование на языке С микроконтроллеров AVR с использ...

Программирование на языке R-Лисп
Изложены основы программирования на языке R-Лисп, широко распространённом диалекте языка Лисп - языке реализации системы аналитических вычислений Redu...