1. Оголошення та ініціалізація структур

Структура – це сукупність логічно зв'язаних змінних, об'єднаних під одним іменем. На відміну від масиву, який може мати тільки  елементи одного типу, структура може складатися зі змінних довільних типів.

Структура – це похідний тип даних. Вона створюється з об'єктів інших типів. Загальний формат об'яви нової структури такий:

struct назва_структури {

елементи_структури

                                          };


Приклад. 

struct coord {

char * namePoint;

float X;

float Y;

                    };

Визначення struct coord складається з трьох елементів: одного елементу типу char* (namePoint) та двох елементів типу float (X, Y).


Елементами структури можуть бути як змінні основних типів даних, так і агрегати, такі, як масиви, структури.

Елемент структури не може бути структурою такого ж типу, як структура, в якій він описаний.

 Але такий елемент може бути покажчиком на тип структури, в яку він входить.

Структура, яка містить покажчик, що посилається на структуру такого ж типу, називається структурою, що посилається на саму себе.



Вищенаведене визначення структури не резервує місця в оперативній пам'яті. Воно тільки створює новий тип даних, який можна використати для об'яви змінних.

 Наприклад, в об'яві

struct coord myCoord, arrayCoord[52], *cPtr;

myCoord – змінна типу struct coord;  arrayCoord – масив, що складається із 52 елементів типу struct coord,

 cPtr – покажчик на struct coord.



•Ім'я для структури не є обов'язковим. Якщо воно відсутнє, то змінні для цієї структури можуть бути об'явлені тільки у визначенні структури.
•Наступні операції є допустимими для структур: присвоєння змінних-структур змінним того ж типу; узяття адреси (&); використання операції sizeof для визначення розміру структури.


Ключове слово typedef надає програмістові механізм для створення синонімів (або псевдонімів) для раніш визначених типів даних. Іншими словами, це ключове слово створює нове ім'я без створення нового типу:

typedef struct coord systemCoord;

typedef struct coord Coord;

typedef  longint Integer;



Структури можуть бути ініційовані, як і масиви, із  використанням списку ініціалізації. Наприклад, об'ява

struct coord myCoord = {“Точка 1”, 5.6, 10};

створює змінну myCoord типу struct coord і присвоює елементу namePoint значення  “Точка 1”, елементу X – 5.6, елементу – 10.



Якщо значень у списку ініціації менше кількості елементів у структурі, решті присвоюється 0 (або NULL, якщо елемент – покажчик). Змінним-структурам, якщо вони об'явлені як глобальні, присвоюється значення 0 або NULL. Структури можна ініціювати і за допомогою оператора присвоєння. При цьому можна або присвоїти змінній-структурі змінну того ж типу, або присвоїти значення окремим елементам структури.




Доступність

Шрифти Шрифти

Розмір шрифта Розмір шрифта

1

Колір тексту Колір тексту

Колір тла Колір тла

Кернінг шрифтів Кернінг шрифтів

Видимість картинок Видимість картинок

Інтервал між літерами Інтервал між літерами

0

Висота рядка Висота рядка

1.2

Виділити посилання Виділити посилання

Вирівнювання тексту Вирівнювання тексту

Ширина абзацу Ширина абзацу

0