Определете структурата. Каква е разликата между структура и масив?


Отговор 1:

Структурата е определен от потребителя тип данни, който може да съдържа един или повече различни видове данни. Масивът е просто съвкупност от елементи, при които всеки елемент е от един и същ тип данни. Помислете, че изграждате приложение, в което искате да съхранявате данни за студенти. Студентът има ролка не (int), име (низ), пол (char) и GPA (float). За целта имате две възможности -

Създайте 4 различни масива - rollno [n], име [n], пол [n], gpa [n], където всеки i за (0 <= i

Следващият начин е да се създаде структура. Вие създавате структура като тази:

Структура студент {int rollno; име на чар [100]; сексапилен секс; float gpa; }; структура на студент-студент [n];

По този начин можете да съхранявате всички подробности за ученик в един блок данни. student_list [i] съхранява всички данни за конкретен ученик.

Структурите осигуряват определено ниво на абстракция. Представете си, че пишете функция за обработка на подробности за конкретен ученик. С първия метод функцията ще изглежда така:

int process_student (int rollno, char * name, char sex, float gpa) {// направи нещо}

Ако използвате структура, можете да предавате данни без усилия -

int process_student (структура на студентски елемент) {// направете нещо със студент}

Можете да продължите да дефинирате методи, които заемат структура и да извършите някаква обработка с нея - по същество симулирайки обектно ориентирано поведение.


Отговор 2:

Структурата е дефиниран от потребителя тип данни.

Масивът е набор от множество елементи от един и същ тип данни.

Когато искате да създадете тип данни, използвате метода структура. По-добре е да използвате struct, в сравнение с масива.

Например, разгледайте следните представи на набор от 50 2D точки. Използвайки масиви, получавате следното определение:

int x [50], y [50];

Можете също да използвате:

междинно съединение [50] [2];

Използването на структура обаче дава най-доброто представяне.

[Код]

Stru Point {

вие X, Y ви;

};

point point точки [50];

[/ Код]